/*! For license information please see mermaid.esm.min.mjs.LICENSE.txt */var E6={2536:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(Me,Ke,Xe,Ee){for(Xe=Xe||{},Ee=Me.length;Ee--;Xe[Me[Ee]]=Ke);return Xe},_=[1,6],y=[1,7],E=[1,8],A=[1,9],w=[1,16],F=[1,11],B=[1,12],P=[1,13],G=[1,14],K=[1,15],J=[1,27],ht=[1,33],tt=[1,34],kt=[1,35],at=[1,36],ut=[1,37],vt=[1,72],Zt=[1,73],Gt=[1,74],xt=[1,75],It=[1,76],wt=[1,77],mt=[1,78],X=[1,38],ot=[1,39],j=[1,40],yt=[1,41],Y=[1,42],bt=[1,43],Ct=[1,44],$t=[1,45],be=[1,46],We=[1,47],xe=[1,48],pe=[1,49],_e=[1,50],Ae=[1,51],De=[1,52],me=[1,53],wn=[1,54],de=[1,55],Qe=[1,56],ne=[1,57],Qt=[1,59],se=[1,60],Et=[1,61],te=[1,62],st=[1,63],dt=[1,64],ft=[1,65],Mt=[1,66],fe=[1,67],Le=[1,68],en=[1,69],qe=[24,52],sn=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Fe=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Te=[1,94],Oe=[1,95],Be=[1,96],ge=[1,97],re=[15,24,52],An=[7,8,9,10,18,22,25,26,27,28],Ie=[15,24,43,52],ln=[15,24,43,52,86,87,89,90],Ye=[15,43],fn=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Jn={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(Me,Ke,Xe,Ee,mn,At,vr){var Yt=At.length-1;switch(mn){case 4:Ee.setDirection("TB");break;case 5:Ee.setDirection("BT");break;case 6:Ee.setDirection("RL");break;case 7:Ee.setDirection("LR");break;case 11:console.log("open_directive: ",At[Yt]),Ee.parseDirective("%%{","open_directive");break;case 12:break;case 13:At[Yt]=At[Yt].trim().replace(/'/g,'"'),console.log("arg_directive: ",At[Yt]),Ee.parseDirective(At[Yt],"arg_directive");break;case 14:console.log("close_directive: ",At[Yt]),Ee.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:Ee.setC4Type(At[Yt-3]);break;case 26:Ee.setTitle(At[Yt].substring(6)),this.$=At[Yt].substring(6);break;case 27:Ee.setAccDescription(At[Yt].substring(15)),this.$=At[Yt].substring(15);break;case 28:this.$=At[Yt].trim(),Ee.setTitle(this.$);break;case 29:case 30:this.$=At[Yt].trim(),Ee.setAccDescription(this.$);break;case 35:case 36:console.log(At[Yt-1],JSON.stringify(At[Yt])),At[Yt].splice(2,0,"ENTERPRISE"),Ee.addPersonOrSystemBoundary(...At[Yt]),this.$=At[Yt];break;case 37:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystemBoundary(...At[Yt]),this.$=At[Yt];break;case 38:console.log(At[Yt-1],JSON.stringify(At[Yt])),At[Yt].splice(2,0,"CONTAINER"),Ee.addContainerBoundary(...At[Yt]),this.$=At[Yt];break;case 39:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addDeploymentNode("node",...At[Yt]),this.$=At[Yt];break;case 40:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addDeploymentNode("nodeL",...At[Yt]),this.$=At[Yt];break;case 41:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addDeploymentNode("nodeR",...At[Yt]),this.$=At[Yt];break;case 42:Ee.popBoundaryParseStack();break;case 46:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("person",...At[Yt]),this.$=At[Yt];break;case 47:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("external_person",...At[Yt]),this.$=At[Yt];break;case 48:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("system",...At[Yt]),this.$=At[Yt];break;case 49:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("system_db",...At[Yt]),this.$=At[Yt];break;case 50:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("system_queue",...At[Yt]),this.$=At[Yt];break;case 51:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("external_system",...At[Yt]),this.$=At[Yt];break;case 52:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("external_system_db",...At[Yt]),this.$=At[Yt];break;case 53:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addPersonOrSystem("external_system_queue",...At[Yt]),this.$=At[Yt];break;case 54:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("container",...At[Yt]),this.$=At[Yt];break;case 55:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("container_db",...At[Yt]),this.$=At[Yt];break;case 56:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("container_queue",...At[Yt]),this.$=At[Yt];break;case 57:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("external_container",...At[Yt]),this.$=At[Yt];break;case 58:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("external_container_db",...At[Yt]),this.$=At[Yt];break;case 59:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addContainer("external_container_queue",...At[Yt]),this.$=At[Yt];break;case 60:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("component",...At[Yt]),this.$=At[Yt];break;case 61:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("component_db",...At[Yt]),this.$=At[Yt];break;case 62:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("component_queue",...At[Yt]),this.$=At[Yt];break;case 63:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("external_component",...At[Yt]),this.$=At[Yt];break;case 64:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("external_component_db",...At[Yt]),this.$=At[Yt];break;case 65:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addComponent("external_component_queue",...At[Yt]),this.$=At[Yt];break;case 67:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel",...At[Yt]),this.$=At[Yt];break;case 68:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("birel",...At[Yt]),this.$=At[Yt];break;case 69:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel_u",...At[Yt]),this.$=At[Yt];break;case 70:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel_d",...At[Yt]),this.$=At[Yt];break;case 71:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel_l",...At[Yt]),this.$=At[Yt];break;case 72:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel_r",...At[Yt]),this.$=At[Yt];break;case 73:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.addRel("rel_b",...At[Yt]),this.$=At[Yt];break;case 74:console.log(At[Yt-1],JSON.stringify(At[Yt])),At[Yt].splice(0,1),Ee.addRel("rel",...At[Yt]),this.$=At[Yt];break;case 75:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.updateElStyle("update_el_style",...At[Yt]),this.$=At[Yt];break;case 76:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.updateRelStyle("update_rel_style",...At[Yt]),this.$=At[Yt];break;case 77:console.log(At[Yt-1],JSON.stringify(At[Yt])),Ee.updateLayoutConfig("update_layout_config",...At[Yt]),this.$=At[Yt];break;case 78:console.log("PUSH ATTRIBUTE: ",At[Yt]),this.$=[At[Yt]];break;case 79:console.log("PUSH ATTRIBUTE: ",At[Yt-1]),At[Yt].unshift(At[Yt-1]),this.$=At[Yt];break;case 80:case 82:this.$=At[Yt].trim();break;case 81:console.log("kv: ",At[Yt-1],At[Yt]);let Un={};Un[At[Yt-1].trim()]=At[Yt].trim(),this.$=Un;break;case 83:this.$=""}},table:[{3:1,4:2,5:3,6:4,7:_,8:y,9:E,10:A,11:5,12:10,18:w,22:F,25:B,26:P,27:G,28:K},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:_,8:y,9:E,10:A,11:5,12:10,18:w,22:F,25:B,26:P,27:G,28:K},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:J},u([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:ht,33:tt,34:kt,36:at,38:ut,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{23:79,29:29,30:30,31:31,32:ht,33:tt,34:kt,36:at,38:ut,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{23:80,29:29,30:30,31:31,32:ht,33:tt,34:kt,36:at,38:ut,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{23:81,29:29,30:30,31:31,32:ht,33:tt,34:kt,36:at,38:ut,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{23:82,29:29,30:30,31:31,32:ht,33:tt,34:kt,36:at,38:ut,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},u(qe,[2,20],{53:32,39:58,40:70,42:71,30:87,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en}),u(qe,[2,21]),u(sn,[2,23],{15:[1,88]}),u(qe,[2,43],{15:[1,89]}),u(Fe,[2,26]),u(Fe,[2,27]),{35:[1,90]},{37:[1,91]},u(Fe,[2,30]),{45:92,85:93,86:Te,87:Oe,89:Be,90:ge},{45:98,85:93,86:Te,87:Oe,89:Be,90:ge},{45:99,85:93,86:Te,87:Oe,89:Be,90:ge},{45:100,85:93,86:Te,87:Oe,89:Be,90:ge},{45:101,85:93,86:Te,87:Oe,89:Be,90:ge},{45:102,85:93,86:Te,87:Oe,89:Be,90:ge},{45:103,85:93,86:Te,87:Oe,89:Be,90:ge},{45:104,85:93,86:Te,87:Oe,89:Be,90:ge},{45:105,85:93,86:Te,87:Oe,89:Be,90:ge},{45:106,85:93,86:Te,87:Oe,89:Be,90:ge},{45:107,85:93,86:Te,87:Oe,89:Be,90:ge},{45:108,85:93,86:Te,87:Oe,89:Be,90:ge},{45:109,85:93,86:Te,87:Oe,89:Be,90:ge},{45:110,85:93,86:Te,87:Oe,89:Be,90:ge},{45:111,85:93,86:Te,87:Oe,89:Be,90:ge},{45:112,85:93,86:Te,87:Oe,89:Be,90:ge},{45:113,85:93,86:Te,87:Oe,89:Be,90:ge},{45:114,85:93,86:Te,87:Oe,89:Be,90:ge},{45:115,85:93,86:Te,87:Oe,89:Be,90:ge},{45:116,85:93,86:Te,87:Oe,89:Be,90:ge},u(re,[2,66]),{45:117,85:93,86:Te,87:Oe,89:Be,90:ge},{45:118,85:93,86:Te,87:Oe,89:Be,90:ge},{45:119,85:93,86:Te,87:Oe,89:Be,90:ge},{45:120,85:93,86:Te,87:Oe,89:Be,90:ge},{45:121,85:93,86:Te,87:Oe,89:Be,90:ge},{45:122,85:93,86:Te,87:Oe,89:Be,90:ge},{45:123,85:93,86:Te,87:Oe,89:Be,90:ge},{45:124,85:93,86:Te,87:Oe,89:Be,90:ge},{45:125,85:93,86:Te,87:Oe,89:Be,90:ge},{45:126,85:93,86:Te,87:Oe,89:Be,90:ge},{45:127,85:93,86:Te,87:Oe,89:Be,90:ge},{30:128,39:58,40:70,42:71,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,53:32,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en},{15:[1,130],43:[1,129]},{45:131,85:93,86:Te,87:Oe,89:Be,90:ge},{45:132,85:93,86:Te,87:Oe,89:Be,90:ge},{45:133,85:93,86:Te,87:Oe,89:Be,90:ge},{45:134,85:93,86:Te,87:Oe,89:Be,90:ge},{45:135,85:93,86:Te,87:Oe,89:Be,90:ge},{45:136,85:93,86:Te,87:Oe,89:Be,90:ge},{45:137,85:93,86:Te,87:Oe,89:Be,90:ge},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},u(An,[2,9]),{14:142,21:J},{21:[2,13]},{1:[2,15]},u(qe,[2,22]),u(sn,[2,24],{31:31,29:143,32:ht,33:tt,34:kt,36:at,38:ut}),u(qe,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:ht,33:tt,34:kt,36:at,38:ut,44:vt,46:Zt,47:Gt,48:xt,49:It,50:wt,51:mt,54:X,55:ot,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be,63:We,64:xe,65:pe,66:_e,67:Ae,68:De,69:me,70:wn,71:de,72:Qe,73:ne,74:Qt,75:se,76:Et,77:te,78:st,79:dt,80:ft,81:Mt,82:fe,83:Le,84:en}),u(Fe,[2,28]),u(Fe,[2,29]),u(re,[2,46]),u(Ie,[2,78],{85:93,45:145,86:Te,87:Oe,89:Be,90:ge}),u(ln,[2,80]),{88:[1,146]},u(ln,[2,82]),u(ln,[2,83]),u(re,[2,47]),u(re,[2,48]),u(re,[2,49]),u(re,[2,50]),u(re,[2,51]),u(re,[2,52]),u(re,[2,53]),u(re,[2,54]),u(re,[2,55]),u(re,[2,56]),u(re,[2,57]),u(re,[2,58]),u(re,[2,59]),u(re,[2,60]),u(re,[2,61]),u(re,[2,62]),u(re,[2,63]),u(re,[2,64]),u(re,[2,65]),u(re,[2,67]),u(re,[2,68]),u(re,[2,69]),u(re,[2,70]),u(re,[2,71]),u(re,[2,72]),u(re,[2,73]),u(re,[2,74]),u(re,[2,75]),u(re,[2,76]),u(re,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},u(Ye,[2,35]),u(Ye,[2,36]),u(Ye,[2,37]),u(Ye,[2,38]),u(Ye,[2,39]),u(Ye,[2,40]),u(Ye,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},u(sn,[2,25]),u(qe,[2,45]),u(Ie,[2,79]),u(ln,[2,81]),u(re,[2,31]),u(re,[2,42]),u(fn,[2,32]),u(fn,[2,33],{15:[1,152]}),u(An,[2,10]),u(fn,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(Me,Ke){if(!Ke.recoverable){var Xe=new Error(Me);throw Xe.hash=Ke,Xe}this.trace(Me)},parse:function(Me){var Ke=this,Xe=[0],Ee=[],mn=[null],At=[],vr=this.table,Yt="",Un=0,Rn=0,Vn=0,Mn=2,Hn=1,In=At.slice.call(arguments,1),En=Object.create(this.lexer),Fn={yy:{}};for(var Pn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pn)&&(Fn.yy[Pn]=this.yy[Pn]);En.setInput(Me,Fn.yy),Fn.yy.lexer=En,Fn.yy.parser=this,En.yylloc===void 0&&(En.yylloc={});var jn=En.yylloc;At.push(jn);var fa=En.options&&En.options.ranges;function Dr(){var Gn;return typeof(Gn=Ee.pop()||En.lex()||Hn)!="number"&&(Gn instanceof Array&&(Gn=(Ee=Gn).pop()),Gn=Ke.symbols_[Gn]||Gn),Gn}typeof Fn.yy.parseError=="function"?this.parseError=Fn.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var Tr,Sn,oi,Nn,_r,Cr,yr,qr,Dt,Ar={};;){if(oi=Xe[Xe.length-1],this.defaultActions[oi]?Nn=this.defaultActions[oi]:(Tr==null&&(Tr=Dr()),Nn=vr[oi]&&vr[oi][Tr]),Nn===void 0||!Nn.length||!Nn[0]){var Nr="";for(Cr in Dt=[],vr[oi])this.terminals_[Cr]&&Cr>Mn&&Dt.push("'"+this.terminals_[Cr]+"'");Nr=En.showPosition?"Parse error on line "+(Un+1)+`: `+En.showPosition()+` Expecting `+Dt.join(", ")+", got '"+(this.terminals_[Tr]||Tr)+"'":"Parse error on line "+(Un+1)+": Unexpected "+(Tr==Hn?"end of input":"'"+(this.terminals_[Tr]||Tr)+"'"),this.parseError(Nr,{text:En.match,token:this.terminals_[Tr]||Tr,line:En.yylineno,loc:jn,expected:Dt})}if(Nn[0]instanceof Array&&Nn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+oi+", token: "+Tr);switch(Nn[0]){case 1:Xe.push(Tr),mn.push(En.yytext),At.push(En.yylloc),Xe.push(Nn[1]),Tr=null,Sn?(Tr=Sn,Sn=null):(Rn=En.yyleng,Yt=En.yytext,Un=En.yylineno,jn=En.yylloc,Vn>0);break;case 2:if(yr=this.productions_[Nn[1]][1],Ar.$=mn[mn.length-yr],Ar._$={first_line:At[At.length-(yr||1)].first_line,last_line:At[At.length-1].last_line,first_column:At[At.length-(yr||1)].first_column,last_column:At[At.length-1].last_column},fa&&(Ar._$.range=[At[At.length-(yr||1)].range[0],At[At.length-1].range[1]]),(_r=this.performAction.apply(Ar,[Yt,Rn,Un,Fn.yy,Nn[1],mn,At].concat(In)))!==void 0)return _r;yr&&(Xe=Xe.slice(0,-1*yr*2),mn=mn.slice(0,-1*yr),At=At.slice(0,-1*yr)),Xe.push(this.productions_[Nn[1]][0]),mn.push(Ar.$),At.push(Ar._$),qr=vr[Xe[Xe.length-2]][Xe[Xe.length-1]],Xe.push(qr);break;case 3:return!0}}return!0}},Dn={EOF:1,parseError:function(Me,Ke){if(!this.yy.parser)throw new Error(Me);this.yy.parser.parseError(Me,Ke)},setInput:function(Me,Ke){return this.yy=Ke||this.yy||{},this._input=Me,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 Me=this._input[0];return this.yytext+=Me,this.yyleng++,this.offset++,this.match+=Me,this.matched+=Me,Me.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Me},unput:function(Me){var Ke=Me.length,Xe=Me.split(/(?:\r\n?|\n)/g);this._input=Me+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ke),this.offset-=Ke;var Ee=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),Xe.length-1&&(this.yylineno-=Xe.length-1);var mn=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:Xe?(Xe.length===Ee.length?this.yylloc.first_column:0)+Ee[Ee.length-Xe.length].length-Xe[0].length:this.yylloc.first_column-Ke},this.options.ranges&&(this.yylloc.range=[mn[0],mn[0]+this.yyleng-Ke]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(Me){this.unput(this.match.slice(Me))},pastInput:function(){var Me=this.matched.substr(0,this.matched.length-this.match.length);return(Me.length>20?"...":"")+Me.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Me=this.match;return Me.length<20&&(Me+=this._input.substr(0,20-Me.length)),(Me.substr(0,20)+(Me.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Me=this.pastInput(),Ke=new Array(Me.length+1).join("-");return Me+this.upcomingInput()+` `+Ke+"^"},test_match:function(Me,Ke){var Xe,Ee,mn;if(this.options.backtrack_lexer&&(mn={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&&(mn.yylloc.range=this.yylloc.range.slice(0))),(Ee=Me[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=Ee.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ee?Ee[Ee.length-1].length-Ee[Ee.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Me[0].length},this.yytext+=Me[0],this.match+=Me[0],this.matches=Me,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(Me[0].length),this.matched+=Me[0],Xe=this.performAction.call(this,this.yy,this,Ke,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Xe)return Xe;if(this._backtrack){for(var At in mn)this[At]=mn[At];return!1}return!1},next:function(){if(this.done)return this.EOF;var Me,Ke,Xe,Ee;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var mn=this._currentRules(),At=0;AtKe[0].length)){if(Ke=Xe,Ee=At,this.options.backtrack_lexer){if((Me=this.test_match(Xe,mn[At]))!==!1)return Me;if(this._backtrack){Ke=!1;continue}return!1}if(!this.options.flex)break}return Ke?(Me=this.test_match(Ke,mn[Ee]))!==!1&&Me:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(Me){this.conditionStack.push(Me)},popState:function(){return this.conditionStack.length-1>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(Me){return(Me=this.conditionStack.length-1-Math.abs(Me||0))>=0?this.conditionStack[Me]:"INITIAL"},pushState:function(Me){this.begin(Me)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Me,Ke,Xe,Ee){switch(Xe){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:case 21:break;case 19:c;break;case 20:return 15;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),console.log("begin person_ext"),55;case 28:return this.begin("person"),console.log("begin person"),54;case 29:return this.begin("system_ext_queue"),console.log("begin system_ext_queue"),61;case 30:return this.begin("system_ext_db"),console.log("begin system_ext_db"),60;case 31:return this.begin("system_ext"),console.log("begin system_ext"),59;case 32:return this.begin("system_queue"),console.log("begin system_queue"),58;case 33:return this.begin("system_db"),console.log("begin system_db"),57;case 34:return this.begin("system"),console.log("begin system"),56;case 35:return this.begin("boundary"),console.log("begin boundary"),47;case 36:return this.begin("enterprise_boundary"),console.log("begin enterprise_boundary"),44;case 37:return this.begin("system_boundary"),console.log("begin system_boundary"),46;case 38:return this.begin("container_ext_queue"),console.log("begin container_ext_queue"),67;case 39:return this.begin("container_ext_db"),console.log("begin container_ext_db"),66;case 40:return this.begin("container_ext"),console.log("begin container_ext"),65;case 41:return this.begin("container_queue"),console.log("begin container_queue"),64;case 42:return this.begin("container_db"),console.log("begin container_db"),63;case 43:return this.begin("container"),console.log("begin container"),62;case 44:return this.begin("container_boundary"),console.log("begin container_boundary"),48;case 45:return this.begin("component_ext_queue"),console.log("begin component_ext_queue"),73;case 46:return this.begin("component_ext_db"),console.log("begin component_ext_db"),72;case 47:return this.begin("component_ext"),console.log("begin component_ext"),71;case 48:return this.begin("component_queue"),console.log("begin component_queue"),70;case 49:return this.begin("component_db"),console.log("begin component_db"),69;case 50:return this.begin("component"),console.log("begin component"),68;case 51:case 52:return this.begin("node"),console.log("begin node"),49;case 53:return this.begin("node_l"),console.log("begin node_l"),50;case 54:return this.begin("node_r"),console.log("begin node_r"),51;case 55:return this.begin("rel"),console.log("begin rel"),74;case 56:return this.begin("birel"),console.log("begin birel"),75;case 57:case 58:return this.begin("rel_u"),console.log("begin rel_u"),76;case 59:case 60:return this.begin("rel_d"),console.log("begin rel_d"),77;case 61:case 62:return this.begin("rel_l"),console.log("begin rel_l"),78;case 63:case 64:return this.begin("rel_r"),console.log("begin rel_r"),79;case 65:return this.begin("rel_b"),console.log("begin rel_b"),80;case 66:return this.begin("rel_index"),console.log("begin rel_index"),81;case 67:return this.begin("update_el_style"),console.log("begin update_el_style"),82;case 68:return this.begin("update_rel_style"),console.log("begin update_rel_style"),83;case 69:return this.begin("update_layout_config"),console.log("begin update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return console.log("begin attribute with ATTRIBUTE_EMPTY"),this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:console.log("begin attribute"),this.begin("attribute");break;case 73:console.log("STOP attribute"),this.popState(),console.log("STOP diagram"),this.popState();break;case 74:return console.log(",,"),90;case 75:console.log(",");break;case 76:return console.log("ATTRIBUTE_EMPTY"),90;case 77:console.log("begin string"),this.begin("string");break;case 78:console.log("STOP string"),this.popState();break;case 79:return console.log("STR"),"STR";case 80:console.log("begin string_kv"),this.begin("string_kv");break;case 81:return console.log("STR_KEY"),this.begin("string_kv_key"),"STR_KEY";case 82:console.log("begin string_kv_value"),this.popState(),this.begin("string_kv_value");break;case 83:return console.log("STR_VALUE"),"STR_VALUE";case 84:console.log("STOP string_kv_value"),this.popState(),this.popState();break;case 85:return console.log("not STR"),"STR";case 86:return console.log("begin boundary block"),"LBRACE";case 87:return console.log("STOP boundary block"),"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};function Tn(){this.yy={}}return Jn.lexer=Dn,Tn.prototype=Jn,Jn.Parser=Tn,new Tn}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(555).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},1362:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(Qt,se,Et,te){for(Et=Et||{},te=Qt.length;te--;Et[Qt[te]]=se);return Et},_=[1,3],y=[1,7],E=[1,8],A=[1,9],w=[1,10],F=[1,13],B=[1,12],P=[1,16,25],G=[1,20],K=[1,31],J=[1,32],ht=[1,33],tt=[1,35],kt=[1,38],at=[1,36],ut=[1,37],vt=[1,39],Zt=[1,40],Gt=[1,41],xt=[1,42],It=[1,45],wt=[1,46],mt=[1,47],X=[1,48],ot=[16,25],j=[1,62],yt=[1,63],Y=[1,64],bt=[1,65],Ct=[1,66],$t=[1,67],be=[1,68],We=[16,25,32,44,45,53,56,57,58,59,60,61,62,67,69],xe=[16,25,30,32,44,45,49,53,56,57,58,59,60,61,62,67,69,84,85,86,87],pe=[5,8,9,10,11,16,19,23,25],_e=[53,84,85,86,87],Ae=[53,61,62,84,85,86,87],De=[53,56,57,58,59,60,84,85,86,87],me=[16,25,32],wn=[1,100],de={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statments:5,direction:6,directive:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,statements:24,EOF:25,statement:26,className:27,alphaNumToken:28,classLiteralName:29,GENERICTYPE:30,relationStatement:31,LABEL:32,classStatement:33,methodStatement:34,annotationStatement:35,clickStatement:36,cssClassStatement:37,acc_title:38,acc_title_value:39,acc_descr:40,acc_descr_value:41,acc_descr_multiline_value:42,CLASS:43,STYLE_SEPARATOR:44,STRUCT_START:45,members:46,STRUCT_STOP:47,ANNOTATION_START:48,ANNOTATION_END:49,MEMBER:50,SEPARATOR:51,relation:52,STR:53,relationType:54,lineType:55,AGGREGATION:56,EXTENSION:57,COMPOSITION:58,DEPENDENCY:59,LOLLIPOP:60,LINE:61,DOTTED_LINE:62,CALLBACK:63,LINK:64,LINK_TARGET:65,CLICK:66,CALLBACK_NAME:67,CALLBACK_ARGS:68,HREF:69,CSSCLASS:70,commentToken:71,textToken:72,graphCodeTokens:73,textNoTagsToken:74,TAGSTART:75,TAGEND:76,"==":77,"--":78,PCT:79,DEFAULT:80,SPACE:81,MINUS:82,keywords:83,UNICODE_TEXT:84,NUM:85,ALPHA:86,BQUOTE_STR:87,$accept:0,$end:1},terminals_:{2:"error",5:"statments",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",25:"EOF",30:"GENERICTYPE",32:"LABEL",38:"acc_title",39:"acc_title_value",40:"acc_descr",41:"acc_descr_value",42:"acc_descr_multiline_value",43:"CLASS",44:"STYLE_SEPARATOR",45:"STRUCT_START",47:"STRUCT_STOP",48:"ANNOTATION_START",49:"ANNOTATION_END",50:"MEMBER",51:"SEPARATOR",53:"STR",56:"AGGREGATION",57:"EXTENSION",58:"COMPOSITION",59:"DEPENDENCY",60:"LOLLIPOP",61:"LINE",62:"DOTTED_LINE",63:"CALLBACK",64:"LINK",65:"LINK_TARGET",66:"CLICK",67:"CALLBACK_NAME",68:"CALLBACK_ARGS",69:"HREF",70:"CSSCLASS",73:"graphCodeTokens",75:"TAGSTART",76:"TAGEND",77:"==",78:"--",79:"PCT",80:"DEFAULT",81:"SPACE",82:"MINUS",83:"keywords",84:"UNICODE_TEXT",85:"NUM",86:"ALPHA",87:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[3,1],[3,2],[6,1],[6,1],[6,1],[6,1],[4,1],[7,4],[7,6],[13,1],[14,1],[18,1],[15,1],[12,4],[24,1],[24,2],[24,3],[27,1],[27,1],[27,2],[27,2],[27,2],[26,1],[26,2],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,2],[26,2],[26,1],[33,2],[33,4],[33,5],[33,7],[35,4],[46,1],[46,2],[34,1],[34,2],[34,1],[34,1],[31,3],[31,4],[31,4],[31,5],[52,3],[52,2],[52,2],[52,1],[54,1],[54,1],[54,1],[54,1],[54,1],[55,1],[55,1],[36,3],[36,4],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[37,3],[71,1],[71,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[74,1],[74,1],[74,1],[74,1],[28,1],[28,1],[28,1],[29,1]],performAction:function(Qt,se,Et,te,st,dt,ft){var Mt=dt.length-1;switch(st){case 5:te.setDirection("TB");break;case 6:te.setDirection("BT");break;case 7:te.setDirection("RL");break;case 8:te.setDirection("LR");break;case 12:te.parseDirective("%%{","open_directive");break;case 13:te.parseDirective(dt[Mt],"type_directive");break;case 14:dt[Mt]=dt[Mt].trim().replace(/'/g,'"'),te.parseDirective(dt[Mt],"arg_directive");break;case 15:te.parseDirective("}%%","close_directive","class");break;case 20:case 21:this.$=dt[Mt];break;case 22:this.$=dt[Mt-1]+dt[Mt];break;case 23:case 24:this.$=dt[Mt-1]+"~"+dt[Mt];break;case 25:te.addRelation(dt[Mt]);break;case 26:dt[Mt-1].title=te.cleanupLabel(dt[Mt]),te.addRelation(dt[Mt-1]);break;case 34:this.$=dt[Mt].trim(),te.setAccTitle(this.$);break;case 35:case 36:this.$=dt[Mt].trim(),te.setAccDescription(this.$);break;case 37:te.addClass(dt[Mt]);break;case 38:te.addClass(dt[Mt-2]),te.setCssClass(dt[Mt-2],dt[Mt]);break;case 39:te.addClass(dt[Mt-3]),te.addMembers(dt[Mt-3],dt[Mt-1]);break;case 40:te.addClass(dt[Mt-5]),te.setCssClass(dt[Mt-5],dt[Mt-3]),te.addMembers(dt[Mt-5],dt[Mt-1]);break;case 41:te.addAnnotation(dt[Mt],dt[Mt-2]);break;case 42:this.$=[dt[Mt]];break;case 43:dt[Mt].push(dt[Mt-1]),this.$=dt[Mt];break;case 44:case 46:case 47:break;case 45:te.addMember(dt[Mt-1],te.cleanupLabel(dt[Mt]));break;case 48:this.$={id1:dt[Mt-2],id2:dt[Mt],relation:dt[Mt-1],relationTitle1:"none",relationTitle2:"none"};break;case 49:this.$={id1:dt[Mt-3],id2:dt[Mt],relation:dt[Mt-1],relationTitle1:dt[Mt-2],relationTitle2:"none"};break;case 50:this.$={id1:dt[Mt-3],id2:dt[Mt],relation:dt[Mt-2],relationTitle1:"none",relationTitle2:dt[Mt-1]};break;case 51:this.$={id1:dt[Mt-4],id2:dt[Mt],relation:dt[Mt-2],relationTitle1:dt[Mt-3],relationTitle2:dt[Mt-1]};break;case 52:this.$={type1:dt[Mt-2],type2:dt[Mt],lineType:dt[Mt-1]};break;case 53:this.$={type1:"none",type2:dt[Mt],lineType:dt[Mt-1]};break;case 54:this.$={type1:dt[Mt-1],type2:"none",lineType:dt[Mt]};break;case 55:this.$={type1:"none",type2:"none",lineType:dt[Mt]};break;case 56:this.$=te.relationType.AGGREGATION;break;case 57:this.$=te.relationType.EXTENSION;break;case 58:this.$=te.relationType.COMPOSITION;break;case 59:this.$=te.relationType.DEPENDENCY;break;case 60:this.$=te.relationType.LOLLIPOP;break;case 61:this.$=te.lineType.LINE;break;case 62:this.$=te.lineType.DOTTED_LINE;break;case 63:case 69:this.$=dt[Mt-2],te.setClickEvent(dt[Mt-1],dt[Mt]);break;case 64:case 70:this.$=dt[Mt-3],te.setClickEvent(dt[Mt-2],dt[Mt-1]),te.setTooltip(dt[Mt-2],dt[Mt]);break;case 65:case 73:this.$=dt[Mt-2],te.setLink(dt[Mt-1],dt[Mt]);break;case 66:case 74:this.$=dt[Mt-3],te.setLink(dt[Mt-2],dt[Mt-1],dt[Mt]);break;case 67:case 75:this.$=dt[Mt-3],te.setLink(dt[Mt-2],dt[Mt-1]),te.setTooltip(dt[Mt-2],dt[Mt]);break;case 68:case 76:this.$=dt[Mt-4],te.setLink(dt[Mt-3],dt[Mt-2],dt[Mt]),te.setTooltip(dt[Mt-3],dt[Mt-1]);break;case 71:this.$=dt[Mt-3],te.setClickEvent(dt[Mt-2],dt[Mt-1],dt[Mt]);break;case 72:this.$=dt[Mt-4],te.setClickEvent(dt[Mt-3],dt[Mt-2],dt[Mt-1]),te.setTooltip(dt[Mt-3],dt[Mt]);break;case 77:te.setCssClass(dt[Mt-1],dt[Mt])}},table:[{3:1,4:2,5:_,6:4,7:5,8:y,9:E,10:A,11:w,12:6,13:11,19:F,23:B},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{3:14,4:2,5:_,6:4,7:5,8:y,9:E,10:A,11:w,12:6,13:11,19:F,23:B},{1:[2,9]},u(P,[2,5]),u(P,[2,6]),u(P,[2,7]),u(P,[2,8]),{14:15,20:[1,16]},{16:[1,17]},{20:[2,12]},{1:[2,4]},{15:18,17:[1,19],22:G},u([17,22],[2,13]),{6:30,7:29,8:y,9:E,10:A,11:w,13:11,19:F,24:21,26:22,27:34,28:43,29:44,31:23,33:24,34:25,35:26,36:27,37:28,38:K,40:J,42:ht,43:tt,48:kt,50:at,51:ut,63:vt,64:Zt,66:Gt,70:xt,84:It,85:wt,86:mt,87:X},{16:[1,49]},{18:50,21:[1,51]},{16:[2,15]},{25:[1,52]},{16:[1,53],25:[2,17]},u(ot,[2,25],{32:[1,54]}),u(ot,[2,27]),u(ot,[2,28]),u(ot,[2,29]),u(ot,[2,30]),u(ot,[2,31]),u(ot,[2,32]),u(ot,[2,33]),{39:[1,55]},{41:[1,56]},u(ot,[2,36]),u(ot,[2,44],{52:57,54:60,55:61,32:[1,59],53:[1,58],56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be}),{27:69,28:43,29:44,84:It,85:wt,86:mt,87:X},u(ot,[2,46]),u(ot,[2,47]),{28:70,84:It,85:wt,86:mt},{27:71,28:43,29:44,84:It,85:wt,86:mt,87:X},{27:72,28:43,29:44,84:It,85:wt,86:mt,87:X},{27:73,28:43,29:44,84:It,85:wt,86:mt,87:X},{53:[1,74]},u(We,[2,20],{28:43,29:44,27:75,30:[1,76],84:It,85:wt,86:mt,87:X}),u(We,[2,21],{30:[1,77]}),u(xe,[2,91]),u(xe,[2,92]),u(xe,[2,93]),u([16,25,30,32,44,45,53,56,57,58,59,60,61,62,67,69],[2,94]),u(pe,[2,10]),{15:78,22:G},{22:[2,14]},{1:[2,16]},{6:30,7:29,8:y,9:E,10:A,11:w,13:11,19:F,24:79,25:[2,18],26:22,27:34,28:43,29:44,31:23,33:24,34:25,35:26,36:27,37:28,38:K,40:J,42:ht,43:tt,48:kt,50:at,51:ut,63:vt,64:Zt,66:Gt,70:xt,84:It,85:wt,86:mt,87:X},u(ot,[2,26]),u(ot,[2,34]),u(ot,[2,35]),{27:80,28:43,29:44,53:[1,81],84:It,85:wt,86:mt,87:X},{52:82,54:60,55:61,56:j,57:yt,58:Y,59:bt,60:Ct,61:$t,62:be},u(ot,[2,45]),{55:83,61:$t,62:be},u(_e,[2,55],{54:84,56:j,57:yt,58:Y,59:bt,60:Ct}),u(Ae,[2,56]),u(Ae,[2,57]),u(Ae,[2,58]),u(Ae,[2,59]),u(Ae,[2,60]),u(De,[2,61]),u(De,[2,62]),u(ot,[2,37],{44:[1,85],45:[1,86]}),{49:[1,87]},{53:[1,88]},{53:[1,89]},{67:[1,90],69:[1,91]},{28:92,84:It,85:wt,86:mt},u(We,[2,22]),u(We,[2,23]),u(We,[2,24]),{16:[1,93]},{25:[2,19]},u(me,[2,48]),{27:94,28:43,29:44,84:It,85:wt,86:mt,87:X},{27:95,28:43,29:44,53:[1,96],84:It,85:wt,86:mt,87:X},u(_e,[2,54],{54:97,56:j,57:yt,58:Y,59:bt,60:Ct}),u(_e,[2,53]),{28:98,84:It,85:wt,86:mt},{46:99,50:wn},{27:101,28:43,29:44,84:It,85:wt,86:mt,87:X},u(ot,[2,63],{53:[1,102]}),u(ot,[2,65],{53:[1,104],65:[1,103]}),u(ot,[2,69],{53:[1,105],68:[1,106]}),u(ot,[2,73],{53:[1,108],65:[1,107]}),u(ot,[2,77]),u(pe,[2,11]),u(me,[2,50]),u(me,[2,49]),{27:109,28:43,29:44,84:It,85:wt,86:mt,87:X},u(_e,[2,52]),u(ot,[2,38],{45:[1,110]}),{47:[1,111]},{46:112,47:[2,42],50:wn},u(ot,[2,41]),u(ot,[2,64]),u(ot,[2,66]),u(ot,[2,67],{65:[1,113]}),u(ot,[2,70]),u(ot,[2,71],{53:[1,114]}),u(ot,[2,74]),u(ot,[2,75],{65:[1,115]}),u(me,[2,51]),{46:116,50:wn},u(ot,[2,39]),{47:[2,43]},u(ot,[2,68]),u(ot,[2,72]),u(ot,[2,76]),{47:[1,117]},u(ot,[2,40])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],6:[2,9],13:[2,12],14:[2,4],20:[2,15],51:[2,14],52:[2,16],79:[2,19],112:[2,43]},parseError:function(Qt,se){if(!se.recoverable){var Et=new Error(Qt);throw Et.hash=se,Et}this.trace(Qt)},parse:function(Qt){var se=this,Et=[0],te=[],st=[null],dt=[],ft=this.table,Mt="",fe=0,Le=0,en=0,qe=2,sn=1,Fe=dt.slice.call(arguments,1),Te=Object.create(this.lexer),Oe={yy:{}};for(var Be in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Be)&&(Oe.yy[Be]=this.yy[Be]);Te.setInput(Qt,Oe.yy),Oe.yy.lexer=Te,Oe.yy.parser=this,Te.yylloc===void 0&&(Te.yylloc={});var ge=Te.yylloc;dt.push(ge);var re=Te.options&&Te.options.ranges;function An(){var mn;return typeof(mn=te.pop()||Te.lex()||sn)!="number"&&(mn instanceof Array&&(mn=(te=mn).pop()),mn=se.symbols_[mn]||mn),mn}typeof Oe.yy.parseError=="function"?this.parseError=Oe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var Ie,ln,Ye,fn,Jn,Dn,Tn,Me,Ke,Xe={};;){if(Ye=Et[Et.length-1],this.defaultActions[Ye]?fn=this.defaultActions[Ye]:(Ie==null&&(Ie=An()),fn=ft[Ye]&&ft[Ye][Ie]),fn===void 0||!fn.length||!fn[0]){var Ee="";for(Dn in Ke=[],ft[Ye])this.terminals_[Dn]&&Dn>qe&&Ke.push("'"+this.terminals_[Dn]+"'");Ee=Te.showPosition?"Parse error on line "+(fe+1)+`: `+Te.showPosition()+` Expecting `+Ke.join(", ")+", got '"+(this.terminals_[Ie]||Ie)+"'":"Parse error on line "+(fe+1)+": Unexpected "+(Ie==sn?"end of input":"'"+(this.terminals_[Ie]||Ie)+"'"),this.parseError(Ee,{text:Te.match,token:this.terminals_[Ie]||Ie,line:Te.yylineno,loc:ge,expected:Ke})}if(fn[0]instanceof Array&&fn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ye+", token: "+Ie);switch(fn[0]){case 1:Et.push(Ie),st.push(Te.yytext),dt.push(Te.yylloc),Et.push(fn[1]),Ie=null,ln?(Ie=ln,ln=null):(Le=Te.yyleng,Mt=Te.yytext,fe=Te.yylineno,ge=Te.yylloc,en>0);break;case 2:if(Tn=this.productions_[fn[1]][1],Xe.$=st[st.length-Tn],Xe._$={first_line:dt[dt.length-(Tn||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Tn||1)].first_column,last_column:dt[dt.length-1].last_column},re&&(Xe._$.range=[dt[dt.length-(Tn||1)].range[0],dt[dt.length-1].range[1]]),(Jn=this.performAction.apply(Xe,[Mt,Le,fe,Oe.yy,fn[1],st,dt].concat(Fe)))!==void 0)return Jn;Tn&&(Et=Et.slice(0,-1*Tn*2),st=st.slice(0,-1*Tn),dt=dt.slice(0,-1*Tn)),Et.push(this.productions_[fn[1]][0]),st.push(Xe.$),dt.push(Xe._$),Me=ft[Et[Et.length-2]][Et[Et.length-1]],Et.push(Me);break;case 3:return!0}}return!0}},Qe={EOF:1,parseError:function(Qt,se){if(!this.yy.parser)throw new Error(Qt);this.yy.parser.parseError(Qt,se)},setInput:function(Qt,se){return this.yy=se||this.yy||{},this._input=Qt,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 Qt=this._input[0];return this.yytext+=Qt,this.yyleng++,this.offset++,this.match+=Qt,this.matched+=Qt,Qt.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Qt},unput:function(Qt){var se=Qt.length,Et=Qt.split(/(?:\r\n?|\n)/g);this._input=Qt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-se),this.offset-=se;var te=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),Et.length-1&&(this.yylineno-=Et.length-1);var st=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:Et?(Et.length===te.length?this.yylloc.first_column:0)+te[te.length-Et.length].length-Et[0].length:this.yylloc.first_column-se},this.options.ranges&&(this.yylloc.range=[st[0],st[0]+this.yyleng-se]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(Qt){this.unput(this.match.slice(Qt))},pastInput:function(){var Qt=this.matched.substr(0,this.matched.length-this.match.length);return(Qt.length>20?"...":"")+Qt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Qt=this.match;return Qt.length<20&&(Qt+=this._input.substr(0,20-Qt.length)),(Qt.substr(0,20)+(Qt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Qt=this.pastInput(),se=new Array(Qt.length+1).join("-");return Qt+this.upcomingInput()+` `+se+"^"},test_match:function(Qt,se){var Et,te,st;if(this.options.backtrack_lexer&&(st={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&&(st.yylloc.range=this.yylloc.range.slice(0))),(te=Qt[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=te.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:te?te[te.length-1].length-te[te.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Qt[0].length},this.yytext+=Qt[0],this.match+=Qt[0],this.matches=Qt,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(Qt[0].length),this.matched+=Qt[0],Et=this.performAction.call(this,this.yy,this,se,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Et)return Et;if(this._backtrack){for(var dt in st)this[dt]=st[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;var Qt,se,Et,te;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var st=this._currentRules(),dt=0;dtse[0].length)){if(se=Et,te=dt,this.options.backtrack_lexer){if((Qt=this.test_match(Et,st[dt]))!==!1)return Qt;if(this._backtrack){se=!1;continue}return!1}if(!this.options.flex)break}return se?(Qt=this.test_match(se,st[te]))!==!1&&Qt:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(Qt){this.conditionStack.push(Qt)},popState:function(){return this.conditionStack.length-1>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(Qt){return(Qt=this.conditionStack.length-1-Math.abs(Qt||0))>=0?this.conditionStack[Qt]:"INITIAL"},pushState:function(Qt){this.begin(Qt)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Qt,se,Et,te){switch(Et){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:case 10:case 19:case 27:break;case 11:return this.begin("acc_title"),38;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),40;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:case 37:case 40:case 43:case 46:case 49:case 52:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 20:case 21:return 23;case 22:return this.begin("struct"),45;case 23:return"EDGE_STATE";case 24:return"EOF_IN_STRUCT";case 25:return"OPEN_IN_STRUCT";case 26:return this.popState(),47;case 28:return"MEMBER";case 29:return 43;case 30:return 70;case 31:return 63;case 32:return 64;case 33:return 66;case 34:return 48;case 35:return 49;case 36:this.begin("generic");break;case 38:return"GENERICTYPE";case 39:this.begin("string");break;case 41:return"STR";case 42:this.begin("bqstring");break;case 44:return"BQUOTE_STR";case 45:this.begin("href");break;case 47:return 69;case 48:this.begin("callback_name");break;case 50:this.popState(),this.begin("callback_args");break;case 51:return 67;case 53:return 68;case 54:case 55:case 56:case 57:return 65;case 58:case 59:return 57;case 60:case 61:return 59;case 62:return 58;case 63:return 56;case 64:return 60;case 65:return 61;case 66:return 62;case 67:return 32;case 68:return 44;case 69:return 82;case 70:return"DOT";case 71:return"PLUS";case 72:return 79;case 73:case 74:return"EQUALS";case 75:return 86;case 76:return"PUNCTUATION";case 77:return 85;case 78:return 84;case 79:return 81;case 80:return 25}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:[{])/,/^(?:\[\*\])/,/^(?:$)/,/^(?:[{])/,/^(?:[}])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:class\b)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:[~])/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[`])/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},callback_args:{rules:[52,53],inclusive:!1},callback_name:{rules:[49,50,51],inclusive:!1},href:{rules:[46,47],inclusive:!1},struct:{rules:[23,24,25,26,27,28],inclusive:!1},generic:{rules:[37,38],inclusive:!1},bqstring:{rules:[43,44],inclusive:!1},string:{rules:[40,41],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,29,30,31,32,33,34,35,36,39,42,45,48,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80],inclusive:!0}}};function ne(){this.yy={}}return de.lexer=Qe,ne.prototype=de,de.Parser=ne,new ne}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(8218).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},5890:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(X,ot,j,yt){for(j=j||{},yt=X.length;yt--;j[X[yt]]=ot);return j},_=[1,2],y=[1,5],E=[6,9,11,23,25,27,29,30,49],A=[1,17],w=[1,18],F=[1,19],B=[1,20],P=[1,21],G=[1,24],K=[1,29],J=[1,30],ht=[1,31],tt=[1,32],kt=[6,9,11,15,20,23,25,27,29,30,42,43,44,45,49],at=[1,45],ut=[30,46,47],vt=[4,6,9,11,23,25,27,29,30,49],Zt=[42,43,44,45],Gt=[22,37],xt=[1,64],It={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,".":31,attribute:32,attributeType:33,attributeName:34,attributeKeyType:35,attributeComment:36,ATTRIBUTE_WORD:37,ATTRIBUTE_KEY:38,COMMENT:39,cardinality:40,relType:41,ZERO_OR_ONE:42,ZERO_OR_MORE:43,ONE_OR_MORE:44,ONLY_ONE:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,open_directive:49,type_directive:50,arg_directive:51,close_directive:52,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:".",37:"ATTRIBUTE_WORD",38:"ATTRIBUTE_KEY",39:"COMMENT",42:"ZERO_OR_ONE",43:"ZERO_OR_MORE",44:"ONE_OR_MORE",45:"ONLY_ONE",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD",49:"open_directive",50:"type_directive",51:"arg_directive",52:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,3],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[36,1],[18,3],[40,1],[40,1],[40,1],[40,1],[41,1],[41,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(X,ot,j,yt,Y,bt,Ct){var $t=bt.length-1;switch(Y){case 1:break;case 3:case 7:case 8:this.$=[];break;case 4:bt[$t-1].push(bt[$t]),this.$=bt[$t-1];break;case 5:case 6:case 20:case 28:case 29:case 30:case 40:this.$=bt[$t];break;case 12:yt.addEntity(bt[$t-4]),yt.addEntity(bt[$t-2]),yt.addRelationship(bt[$t-4],bt[$t],bt[$t-2],bt[$t-3]);break;case 13:yt.addEntity(bt[$t-3]),yt.addAttributes(bt[$t-3],bt[$t-1]);break;case 14:yt.addEntity(bt[$t-2]);break;case 15:yt.addEntity(bt[$t]);break;case 16:case 17:this.$=bt[$t].trim(),yt.setAccTitle(this.$);break;case 18:case 19:this.$=bt[$t].trim(),yt.setAccDescription(this.$);break;case 21:this.$=bt[$t-2]+bt[$t-1]+bt[$t];break;case 22:this.$=[bt[$t]];break;case 23:bt[$t].push(bt[$t-1]),this.$=bt[$t];break;case 24:this.$={attributeType:bt[$t-1],attributeName:bt[$t]};break;case 25:this.$={attributeType:bt[$t-2],attributeName:bt[$t-1],attributeKeyType:bt[$t]};break;case 26:this.$={attributeType:bt[$t-2],attributeName:bt[$t-1],attributeComment:bt[$t]};break;case 27:this.$={attributeType:bt[$t-3],attributeName:bt[$t-2],attributeKeyType:bt[$t-1],attributeComment:bt[$t]};break;case 31:case 39:this.$=bt[$t].replace(/"/g,"");break;case 32:this.$={cardA:bt[$t],relType:bt[$t-1],cardB:bt[$t-2]};break;case 33:this.$=yt.Cardinality.ZERO_OR_ONE;break;case 34:this.$=yt.Cardinality.ZERO_OR_MORE;break;case 35:this.$=yt.Cardinality.ONE_OR_MORE;break;case 36:this.$=yt.Cardinality.ONLY_ONE;break;case 37:this.$=yt.Identification.NON_IDENTIFYING;break;case 38:this.$=yt.Identification.IDENTIFYING;break;case 41:yt.parseDirective("%%{","open_directive");break;case 42:yt.parseDirective(bt[$t],"type_directive");break;case 43:bt[$t]=bt[$t].trim().replace(/'/g,'"'),yt.parseDirective(bt[$t],"arg_directive");break;case 44:yt.parseDirective("}%%","close_directive","er")}},table:[{3:1,4:_,7:3,12:4,49:y},{1:[3]},u(E,[2,3],{5:6}),{3:7,4:_,7:3,12:4,49:y},{13:8,50:[1,9]},{50:[2,41]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:A,25:w,27:F,29:B,30:P,49:y},{1:[2,2]},{14:22,15:[1,23],52:G},u([15,52],[2,42]),u(E,[2,8],{1:[2,1]}),u(E,[2,4]),{7:15,10:25,12:4,17:16,23:A,25:w,27:F,29:B,30:P,49:y},u(E,[2,6]),u(E,[2,7]),u(E,[2,11]),u(E,[2,15],{18:26,40:28,20:[1,27],42:K,43:J,44:ht,45:tt}),{24:[1,33]},{26:[1,34]},{28:[1,35]},u(E,[2,19]),u(kt,[2,20],{31:[1,36]}),{11:[1,37]},{16:38,51:[1,39]},{11:[2,44]},u(E,[2,5]),{17:40,30:P},{21:41,22:[1,42],32:43,33:44,37:at},{41:46,46:[1,47],47:[1,48]},u(ut,[2,33]),u(ut,[2,34]),u(ut,[2,35]),u(ut,[2,36]),u(E,[2,16]),u(E,[2,17]),u(E,[2,18]),{17:49,30:P},u(vt,[2,9]),{14:50,52:G},{52:[2,43]},{15:[1,51]},{22:[1,52]},u(E,[2,14]),{21:53,22:[2,22],32:43,33:44,37:at},{34:54,37:[1,55]},{37:[2,28]},{40:56,42:K,43:J,44:ht,45:tt},u(Zt,[2,37]),u(Zt,[2,38]),u(kt,[2,21]),{11:[1,57]},{19:58,30:[1,60],48:[1,59]},u(E,[2,13]),{22:[2,23]},u(Gt,[2,24],{35:61,36:62,38:[1,63],39:xt}),u([22,37,38,39],[2,29]),{30:[2,32]},u(vt,[2,10]),u(E,[2,12]),u(E,[2,39]),u(E,[2,40]),u(Gt,[2,25],{36:65,39:xt}),u(Gt,[2,26]),u([22,37,39],[2,30]),u(Gt,[2,31]),u(Gt,[2,27])],defaultActions:{5:[2,41],7:[2,2],24:[2,44],39:[2,43],45:[2,28],53:[2,23],56:[2,32]},parseError:function(X,ot){if(!ot.recoverable){var j=new Error(X);throw j.hash=ot,j}this.trace(X)},parse:function(X){var ot=this,j=[0],yt=[],Y=[null],bt=[],Ct=this.table,$t="",be=0,We=0,xe=0,pe=2,_e=1,Ae=bt.slice.call(arguments,1),De=Object.create(this.lexer),me={yy:{}};for(var wn in this.yy)Object.prototype.hasOwnProperty.call(this.yy,wn)&&(me.yy[wn]=this.yy[wn]);De.setInput(X,me.yy),me.yy.lexer=De,me.yy.parser=this,De.yylloc===void 0&&(De.yylloc={});var de=De.yylloc;bt.push(de);var Qe=De.options&&De.options.ranges;function ne(){var qe;return typeof(qe=yt.pop()||De.lex()||_e)!="number"&&(qe instanceof Array&&(qe=(yt=qe).pop()),qe=ot.symbols_[qe]||qe),qe}typeof me.yy.parseError=="function"?this.parseError=me.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var Qt,se,Et,te,st,dt,ft,Mt,fe,Le={};;){if(Et=j[j.length-1],this.defaultActions[Et]?te=this.defaultActions[Et]:(Qt==null&&(Qt=ne()),te=Ct[Et]&&Ct[Et][Qt]),te===void 0||!te.length||!te[0]){var en="";for(dt in fe=[],Ct[Et])this.terminals_[dt]&&dt>pe&&fe.push("'"+this.terminals_[dt]+"'");en=De.showPosition?"Parse error on line "+(be+1)+`: `+De.showPosition()+` Expecting `+fe.join(", ")+", got '"+(this.terminals_[Qt]||Qt)+"'":"Parse error on line "+(be+1)+": Unexpected "+(Qt==_e?"end of input":"'"+(this.terminals_[Qt]||Qt)+"'"),this.parseError(en,{text:De.match,token:this.terminals_[Qt]||Qt,line:De.yylineno,loc:de,expected:fe})}if(te[0]instanceof Array&&te.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Et+", token: "+Qt);switch(te[0]){case 1:j.push(Qt),Y.push(De.yytext),bt.push(De.yylloc),j.push(te[1]),Qt=null,se?(Qt=se,se=null):(We=De.yyleng,$t=De.yytext,be=De.yylineno,de=De.yylloc,xe>0);break;case 2:if(ft=this.productions_[te[1]][1],Le.$=Y[Y.length-ft],Le._$={first_line:bt[bt.length-(ft||1)].first_line,last_line:bt[bt.length-1].last_line,first_column:bt[bt.length-(ft||1)].first_column,last_column:bt[bt.length-1].last_column},Qe&&(Le._$.range=[bt[bt.length-(ft||1)].range[0],bt[bt.length-1].range[1]]),(st=this.performAction.apply(Le,[$t,We,be,me.yy,te[1],Y,bt].concat(Ae)))!==void 0)return st;ft&&(j=j.slice(0,-1*ft*2),Y=Y.slice(0,-1*ft),bt=bt.slice(0,-1*ft)),j.push(this.productions_[te[1]][0]),Y.push(Le.$),bt.push(Le._$),Mt=Ct[j[j.length-2]][j[j.length-1]],j.push(Mt);break;case 3:return!0}}return!0}},wt={EOF:1,parseError:function(X,ot){if(!this.yy.parser)throw new Error(X);this.yy.parser.parseError(X,ot)},setInput:function(X,ot){return this.yy=ot||this.yy||{},this._input=X,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 X=this._input[0];return this.yytext+=X,this.yyleng++,this.offset++,this.match+=X,this.matched+=X,X.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),X},unput:function(X){var ot=X.length,j=X.split(/(?:\r\n?|\n)/g);this._input=X+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ot),this.offset-=ot;var yt=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),j.length-1&&(this.yylineno-=j.length-1);var Y=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:j?(j.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-j.length].length-j[0].length:this.yylloc.first_column-ot},this.options.ranges&&(this.yylloc.range=[Y[0],Y[0]+this.yyleng-ot]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(X){this.unput(this.match.slice(X))},pastInput:function(){var X=this.matched.substr(0,this.matched.length-this.match.length);return(X.length>20?"...":"")+X.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var X=this.match;return X.length<20&&(X+=this._input.substr(0,20-X.length)),(X.substr(0,20)+(X.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var X=this.pastInput(),ot=new Array(X.length+1).join("-");return X+this.upcomingInput()+` `+ot+"^"},test_match:function(X,ot){var j,yt,Y;if(this.options.backtrack_lexer&&(Y={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&&(Y.yylloc.range=this.yylloc.range.slice(0))),(yt=X[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+X[0].length},this.yytext+=X[0],this.match+=X[0],this.matches=X,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(X[0].length),this.matched+=X[0],j=this.performAction.call(this,this.yy,this,ot,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),j)return j;if(this._backtrack){for(var bt in Y)this[bt]=Y[bt];return!1}return!1},next:function(){if(this.done)return this.EOF;var X,ot,j,yt;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var Y=this._currentRules(),bt=0;btot[0].length)){if(ot=j,yt=bt,this.options.backtrack_lexer){if((X=this.test_match(j,Y[bt]))!==!1)return X;if(this._backtrack){ot=!1;continue}return!1}if(!this.options.flex)break}return ot?(X=this.test_match(ot,Y[yt]))!==!1&&X:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(X){this.conditionStack.push(X)},popState:function(){return this.conditionStack.length-1>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(X){return(X=this.conditionStack.length-1-Math.abs(X||0))>=0?this.conditionStack[X]:"INITIAL"},pushState:function(X){this.begin(X)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(X,ot,j,yt){switch(j){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),49;case 8:return this.begin("type_directive"),50;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),52;case 11:return 51;case 12:case 13:case 15:case 20:case 25:break;case 14:return 11;case 16:return 9;case 17:return 48;case 18:return 4;case 19:return this.begin("block"),20;case 21:return 38;case 22:case 23:return 37;case 24:return 39;case 26:return this.popState(),22;case 27:case 40:return ot.yytext[0];case 28:case 32:return 42;case 29:case 33:return 43;case 30:case 34:return 44;case 31:return 45;case 35:case 37:case 38:return 46;case 36:return 47;case 39:return 30;case 41:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[A-Za-z][A-Za-z0-9\-_\[\]]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\|o\b)/i,/^(?:\}o\b)/i,/^(?:\}\|)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,19,28,29,30,31,32,33,34,35,36,37,38,39,40,41],inclusive:!0}}};function mt(){this.yy={}}return It.lexer=wt,mt.prototype=It,It.Parser=mt,new mt}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(8009).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},3602:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(rn,Zn,an,nn){for(an=an||{},nn=rn.length;nn--;an[rn[nn]]=Zn);return an},_=[1,9],y=[1,7],E=[1,6],A=[1,8],w=[1,20,21,22,23,38,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],F=[2,10],B=[1,20],P=[1,21],G=[1,22],K=[1,23],J=[1,30],ht=[1,32],tt=[1,33],kt=[1,34],at=[1,62],ut=[1,48],vt=[1,52],Zt=[1,36],Gt=[1,37],xt=[1,38],It=[1,39],wt=[1,40],mt=[1,56],X=[1,63],ot=[1,51],j=[1,53],yt=[1,55],Y=[1,59],bt=[1,60],Ct=[1,41],$t=[1,42],be=[1,43],We=[1,44],xe=[1,61],pe=[1,50],_e=[1,54],Ae=[1,57],De=[1,58],me=[1,49],wn=[1,66],de=[1,71],Qe=[1,20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],ne=[1,75],Qt=[1,74],se=[1,76],Et=[20,21,23,81,82],te=[1,99],st=[1,104],dt=[1,107],ft=[1,108],Mt=[1,101],fe=[1,106],Le=[1,109],en=[1,102],qe=[1,114],sn=[1,113],Fe=[1,103],Te=[1,105],Oe=[1,110],Be=[1,111],ge=[1,112],re=[1,115],An=[20,21,22,23,81,82],Ie=[20,21,22,23,53,81,82],ln=[20,21,22,23,40,52,53,55,57,59,61,63,65,66,67,69,71,73,74,76,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],Ye=[20,21,23],fn=[20,21,23,52,66,67,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],Jn=[1,12,20,21,22,23,24,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],Dn=[52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],Tn=[1,149],Me=[1,157],Ke=[1,158],Xe=[1,159],Ee=[1,160],mn=[1,144],At=[1,145],vr=[1,141],Yt=[1,152],Un=[1,153],Rn=[1,154],Vn=[1,155],Mn=[1,156],Hn=[1,161],In=[1,162],En=[1,147],Fn=[1,150],Pn=[1,146],jn=[1,143],fa=[20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],Dr=[1,165],Tr=[20,21,22,23,26,52,66,67,91,105,106,109,111,112,122,123,124,125,126,127],Sn=[20,21,22,23,24,26,38,40,41,42,52,56,58,60,62,64,66,67,68,70,72,73,75,77,81,82,86,87,88,89,90,91,92,95,105,106,109,111,112,113,114,122,123,124,125,126,127],oi=[12,21,22,24],Nn=[22,106],_r=[1,250],Cr=[1,245],yr=[1,246],qr=[1,254],Dt=[1,251],Ar=[1,248],Nr=[1,247],Gn=[1,249],Zr=[1,252],Ur=[1,253],Ir=[1,255],Qr=[1,273],xa=[20,21,23,106],cr=[20,21,22,23,66,67,86,102,105,106,109,110,111,112,113],ea={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,text:39,SQS:40,SQE:41,end:42,direction:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,link:49,node:50,vertex:51,AMP:52,STYLE_SEPARATOR:53,idString:54,DOUBLECIRCLESTART:55,DOUBLECIRCLEEND:56,PS:57,PE:58,"(-":59,"-)":60,STADIUMSTART:61,STADIUMEND:62,SUBROUTINESTART:63,SUBROUTINEEND:64,VERTEX_WITH_PROPS_START:65,ALPHA:66,COLON:67,PIPE:68,CYLINDERSTART:69,CYLINDEREND:70,DIAMOND_START:71,DIAMOND_STOP:72,TAGEND:73,TRAPSTART:74,TRAPEND:75,INVTRAPSTART:76,INVTRAPEND:77,linkStatement:78,arrowText:79,TESTSTR:80,START_LINK:81,LINK:82,textToken:83,STR:84,keywords:85,STYLE:86,LINKSTYLE:87,CLASSDEF:88,CLASS:89,CLICK:90,DOWN:91,UP:92,textNoTags:93,textNoTagsToken:94,DEFAULT:95,stylesOpt:96,alphaNum:97,CALLBACKNAME:98,CALLBACKARGS:99,HREF:100,LINK_TARGET:101,HEX:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,MINUS:109,UNIT:110,BRKT:111,DOT:112,PCT:113,TAGSTART:114,alphaNumToken:115,idStringToken:116,alphaNumStatement:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,PUNCTUATION:122,UNICODE_TEXT:123,PLUS:124,EQUALS:125,MULT:126,UNDERSCORE:127,graphCodeTokens:128,ARROW_CROSS:129,ARROW_POINT:130,ARROW_CIRCLE:131,ARROW_OPEN:132,QUOTE:133,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",41:"SQE",42:"end",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",52:"AMP",53:"STYLE_SEPARATOR",55:"DOUBLECIRCLESTART",56:"DOUBLECIRCLEEND",57:"PS",58:"PE",59:"(-",60:"-)",61:"STADIUMSTART",62:"STADIUMEND",63:"SUBROUTINESTART",64:"SUBROUTINEEND",65:"VERTEX_WITH_PROPS_START",66:"ALPHA",67:"COLON",68:"PIPE",69:"CYLINDERSTART",70:"CYLINDEREND",71:"DIAMOND_START",72:"DIAMOND_STOP",73:"TAGEND",74:"TRAPSTART",75:"TRAPEND",76:"INVTRAPSTART",77:"INVTRAPEND",80:"TESTSTR",81:"START_LINK",82:"LINK",84:"STR",86:"STYLE",87:"LINKSTYLE",88:"CLASSDEF",89:"CLASS",90:"CLICK",91:"DOWN",92:"UP",95:"DEFAULT",98:"CALLBACKNAME",99:"CALLBACKARGS",100:"HREF",101:"LINK_TARGET",102:"HEX",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"MINUS",110:"UNIT",111:"BRKT",112:"DOT",113:"PCT",114:"TAGSTART",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr",122:"PUNCTUATION",123:"UNICODE_TEXT",124:"PLUS",125:"EQUALS",126:"MULT",127:"UNDERSCORE",129:"ARROW_CROSS",130:"ARROW_POINT",131:"ARROW_CIRCLE",132:"ARROW_OPEN",133:"QUOTE"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[50,1],[50,5],[50,3],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,8],[51,4],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,4],[51,4],[51,1],[49,2],[49,3],[49,3],[49,1],[49,3],[78,1],[79,3],[39,1],[39,2],[39,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[93,1],[93,2],[35,5],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,2],[37,4],[37,4],[37,6],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[103,1],[103,3],[96,1],[96,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[94,1],[94,1],[94,1],[94,1],[54,1],[54,2],[97,1],[97,2],[117,1],[117,1],[117,1],[117,1],[43,1],[43,1],[43,1],[43,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1]],performAction:function(rn,Zn,an,nn,nr,qt,wi){var Kt=qt.length-1;switch(nr){case 5:nn.parseDirective("%%{","open_directive");break;case 6:nn.parseDirective(qt[Kt],"type_directive");break;case 7:qt[Kt]=qt[Kt].trim().replace(/'/g,'"'),nn.parseDirective(qt[Kt],"arg_directive");break;case 8:nn.parseDirective("}%%","close_directive","flowchart");break;case 10:case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 11:qt[Kt]!==[]&&qt[Kt-1].push(qt[Kt]),this.$=qt[Kt-1];break;case 12:case 82:case 84:case 96:case 152:case 154:case 155:case 78:case 150:this.$=qt[Kt];break;case 19:nn.setDirection("TB"),this.$="TB";break;case 20:nn.setDirection(qt[Kt-1]),this.$=qt[Kt-1];break;case 35:this.$=qt[Kt-1].nodes;break;case 41:this.$=nn.addSubGraph(qt[Kt-6],qt[Kt-1],qt[Kt-4]);break;case 42:this.$=nn.addSubGraph(qt[Kt-3],qt[Kt-1],qt[Kt-3]);break;case 43:this.$=nn.addSubGraph(void 0,qt[Kt-1],void 0);break;case 45:this.$=qt[Kt].trim(),nn.setAccTitle(this.$);break;case 46:case 47:this.$=qt[Kt].trim(),nn.setAccDescription(this.$);break;case 51:nn.addLink(qt[Kt-2].stmt,qt[Kt],qt[Kt-1]),this.$={stmt:qt[Kt],nodes:qt[Kt].concat(qt[Kt-2].nodes)};break;case 52:nn.addLink(qt[Kt-3].stmt,qt[Kt-1],qt[Kt-2]),this.$={stmt:qt[Kt-1],nodes:qt[Kt-1].concat(qt[Kt-3].nodes)};break;case 53:this.$={stmt:qt[Kt-1],nodes:qt[Kt-1]};break;case 54:this.$={stmt:qt[Kt],nodes:qt[Kt]};break;case 55:case 123:case 125:this.$=[qt[Kt]];break;case 56:this.$=qt[Kt-4].concat(qt[Kt]);break;case 57:this.$=[qt[Kt-2]],nn.setClass(qt[Kt-2],qt[Kt]);break;case 58:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"square");break;case 59:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"doublecircle");break;case 60:this.$=qt[Kt-5],nn.addVertex(qt[Kt-5],qt[Kt-2],"circle");break;case 61:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"ellipse");break;case 62:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"stadium");break;case 63:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"subroutine");break;case 64:this.$=qt[Kt-7],nn.addVertex(qt[Kt-7],qt[Kt-1],"rect",void 0,void 0,void 0,Object.fromEntries([[qt[Kt-5],qt[Kt-3]]]));break;case 65:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"cylinder");break;case 66:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"round");break;case 67:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"diamond");break;case 68:this.$=qt[Kt-5],nn.addVertex(qt[Kt-5],qt[Kt-2],"hexagon");break;case 69:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"odd");break;case 70:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"trapezoid");break;case 71:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"inv_trapezoid");break;case 72:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"lean_right");break;case 73:this.$=qt[Kt-3],nn.addVertex(qt[Kt-3],qt[Kt-1],"lean_left");break;case 74:this.$=qt[Kt],nn.addVertex(qt[Kt]);break;case 75:qt[Kt-1].text=qt[Kt],this.$=qt[Kt-1];break;case 76:case 77:qt[Kt-2].text=qt[Kt-1],this.$=qt[Kt-2];break;case 79:var xr=nn.destructLink(qt[Kt],qt[Kt-2]);this.$={type:xr.type,stroke:xr.stroke,length:xr.length,text:qt[Kt-1]};break;case 80:xr=nn.destructLink(qt[Kt]),this.$={type:xr.type,stroke:xr.stroke,length:xr.length};break;case 81:this.$=qt[Kt-1];break;case 83:case 97:case 153:case 151:this.$=qt[Kt-1]+""+qt[Kt];break;case 98:case 99:this.$=qt[Kt-4],nn.addClass(qt[Kt-2],qt[Kt]);break;case 100:this.$=qt[Kt-4],nn.setClass(qt[Kt-2],qt[Kt]);break;case 101:case 109:this.$=qt[Kt-1],nn.setClickEvent(qt[Kt-1],qt[Kt]);break;case 102:case 110:this.$=qt[Kt-3],nn.setClickEvent(qt[Kt-3],qt[Kt-2]),nn.setTooltip(qt[Kt-3],qt[Kt]);break;case 103:this.$=qt[Kt-2],nn.setClickEvent(qt[Kt-2],qt[Kt-1],qt[Kt]);break;case 104:this.$=qt[Kt-4],nn.setClickEvent(qt[Kt-4],qt[Kt-3],qt[Kt-2]),nn.setTooltip(qt[Kt-4],qt[Kt]);break;case 105:case 111:this.$=qt[Kt-1],nn.setLink(qt[Kt-1],qt[Kt]);break;case 106:case 112:this.$=qt[Kt-3],nn.setLink(qt[Kt-3],qt[Kt-2]),nn.setTooltip(qt[Kt-3],qt[Kt]);break;case 107:case 113:this.$=qt[Kt-3],nn.setLink(qt[Kt-3],qt[Kt-2],qt[Kt]);break;case 108:case 114:this.$=qt[Kt-5],nn.setLink(qt[Kt-5],qt[Kt-4],qt[Kt]),nn.setTooltip(qt[Kt-5],qt[Kt-2]);break;case 115:this.$=qt[Kt-4],nn.addVertex(qt[Kt-2],void 0,void 0,qt[Kt]);break;case 116:case 118:this.$=qt[Kt-4],nn.updateLink(qt[Kt-2],qt[Kt]);break;case 117:this.$=qt[Kt-4],nn.updateLink([qt[Kt-2]],qt[Kt]);break;case 119:this.$=qt[Kt-8],nn.updateLinkInterpolate([qt[Kt-6]],qt[Kt-2]),nn.updateLink([qt[Kt-6]],qt[Kt]);break;case 120:this.$=qt[Kt-8],nn.updateLinkInterpolate(qt[Kt-6],qt[Kt-2]),nn.updateLink(qt[Kt-6],qt[Kt]);break;case 121:this.$=qt[Kt-6],nn.updateLinkInterpolate([qt[Kt-4]],qt[Kt]);break;case 122:this.$=qt[Kt-6],nn.updateLinkInterpolate(qt[Kt-4],qt[Kt]);break;case 124:case 126:qt[Kt-2].push(qt[Kt]),this.$=qt[Kt-2];break;case 128:this.$=qt[Kt-1]+qt[Kt];break;case 156:this.$="v";break;case 157:this.$="-";break;case 158:this.$={stmt:"dir",value:"TB"};break;case 159:this.$={stmt:"dir",value:"BT"};break;case 160:this.$={stmt:"dir",value:"RL"};break;case 161:this.$={stmt:"dir",value:"LR"}}},table:[{3:1,4:2,5:3,6:5,12:_,16:4,21:y,22:E,24:A},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:_,16:4,21:y,22:E,24:A},u(w,F,{17:11}),{7:12,13:[1,13]},{16:14,21:y,22:E,24:A},{16:15,21:y,22:E,24:A},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:B,21:P,22:G,23:K,32:24,33:25,34:26,35:27,36:28,37:29,38:J,43:31,44:ht,46:tt,48:kt,50:35,51:45,52:at,54:46,66:ut,67:vt,86:Zt,87:Gt,88:xt,89:It,90:wt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,118:Ct,119:$t,120:be,121:We,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},{8:64,10:[1,65],15:wn},u([10,15],[2,6]),u(w,[2,17]),u(w,[2,18]),u(w,[2,19]),{20:[1,68],21:[1,69],22:de,27:67,30:70},u(Qe,[2,11]),u(Qe,[2,12]),u(Qe,[2,13]),u(Qe,[2,14]),u(Qe,[2,15]),u(Qe,[2,16]),{9:72,20:ne,21:Qt,23:se,49:73,78:77,81:[1,78],82:[1,79]},{9:80,20:ne,21:Qt,23:se},{9:81,20:ne,21:Qt,23:se},{9:82,20:ne,21:Qt,23:se},{9:83,20:ne,21:Qt,23:se},{9:84,20:ne,21:Qt,23:se},{9:86,20:ne,21:Qt,22:[1,85],23:se},u(Qe,[2,44]),{45:[1,87]},{47:[1,88]},u(Qe,[2,47]),u(Et,[2,54],{30:89,22:de}),{22:[1,90]},{22:[1,91]},{22:[1,92]},{22:[1,93]},{26:te,52:st,66:dt,67:ft,84:[1,97],91:Mt,97:96,98:[1,94],100:[1,95],105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Qe,[2,158]),u(Qe,[2,159]),u(Qe,[2,160]),u(Qe,[2,161]),u(An,[2,55],{53:[1,116]}),u(Ie,[2,74],{116:129,40:[1,117],52:at,55:[1,118],57:[1,119],59:[1,120],61:[1,121],63:[1,122],65:[1,123],66:ut,67:vt,69:[1,124],71:[1,125],73:[1,126],74:[1,127],76:[1,128],91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,122:xe,123:pe,124:_e,125:Ae,126:De,127:me}),u(ln,[2,150]),u(ln,[2,175]),u(ln,[2,176]),u(ln,[2,177]),u(ln,[2,178]),u(ln,[2,179]),u(ln,[2,180]),u(ln,[2,181]),u(ln,[2,182]),u(ln,[2,183]),u(ln,[2,184]),u(ln,[2,185]),u(ln,[2,186]),u(ln,[2,187]),u(ln,[2,188]),u(ln,[2,189]),u(ln,[2,190]),{9:130,20:ne,21:Qt,23:se},{11:131,14:[1,132]},u(Ye,[2,8]),u(w,[2,20]),u(w,[2,26]),u(w,[2,27]),{21:[1,133]},u(fn,[2,34],{30:134,22:de}),u(Qe,[2,35]),{50:135,51:45,52:at,54:46,66:ut,67:vt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},u(Jn,[2,48]),u(Jn,[2,49]),u(Jn,[2,50]),u(Dn,[2,78],{79:136,68:[1,138],80:[1,137]}),{22:Tn,24:Me,26:Ke,38:Xe,39:139,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u([52,66,67,68,80,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,80]),u(Qe,[2,36]),u(Qe,[2,37]),u(Qe,[2,38]),u(Qe,[2,39]),u(Qe,[2,40]),{22:Tn,24:Me,26:Ke,38:Xe,39:163,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(fa,F,{17:164}),u(Qe,[2,45]),u(Qe,[2,46]),u(Et,[2,53],{52:Dr}),{26:te,52:st,66:dt,67:ft,91:Mt,97:166,102:[1,167],105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{95:[1,168],103:169,105:[1,170]},{26:te,52:st,66:dt,67:ft,91:Mt,95:[1,171],97:172,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{26:te,52:st,66:dt,67:ft,91:Mt,97:173,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ye,[2,101],{22:[1,174],99:[1,175]}),u(Ye,[2,105],{22:[1,176]}),u(Ye,[2,109],{115:100,117:178,22:[1,177],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re}),u(Ye,[2,111],{22:[1,179]}),u(Tr,[2,152]),u(Tr,[2,154]),u(Tr,[2,155]),u(Tr,[2,156]),u(Tr,[2,157]),u(Sn,[2,162]),u(Sn,[2,163]),u(Sn,[2,164]),u(Sn,[2,165]),u(Sn,[2,166]),u(Sn,[2,167]),u(Sn,[2,168]),u(Sn,[2,169]),u(Sn,[2,170]),u(Sn,[2,171]),u(Sn,[2,172]),u(Sn,[2,173]),u(Sn,[2,174]),{52:at,54:180,66:ut,67:vt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},{22:Tn,24:Me,26:Ke,38:Xe,39:181,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:182,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:184,42:Ee,52:st,57:[1,183],66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:185,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:186,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:187,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{66:[1,188]},{22:Tn,24:Me,26:Ke,38:Xe,39:189,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:190,42:Ee,52:st,66:dt,67:ft,71:[1,191],73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:192,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:193,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:194,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(ln,[2,151]),u(oi,[2,3]),{8:195,15:wn},{15:[2,7]},u(w,[2,28]),u(fn,[2,33]),u(Et,[2,51],{30:196,22:de}),u(Dn,[2,75],{22:[1,197]}),{22:[1,198]},{22:Tn,24:Me,26:Ke,38:Xe,39:199,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,82:[1,200],83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Sn,[2,82]),u(Sn,[2,84]),u(Sn,[2,140]),u(Sn,[2,141]),u(Sn,[2,142]),u(Sn,[2,143]),u(Sn,[2,144]),u(Sn,[2,145]),u(Sn,[2,146]),u(Sn,[2,147]),u(Sn,[2,148]),u(Sn,[2,149]),u(Sn,[2,85]),u(Sn,[2,86]),u(Sn,[2,87]),u(Sn,[2,88]),u(Sn,[2,89]),u(Sn,[2,90]),u(Sn,[2,91]),u(Sn,[2,92]),u(Sn,[2,93]),u(Sn,[2,94]),u(Sn,[2,95]),{9:203,20:ne,21:Qt,22:Tn,23:se,24:Me,26:Ke,38:Xe,40:[1,202],42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{18:18,19:19,20:B,21:P,22:G,23:K,32:24,33:25,34:26,35:27,36:28,37:29,38:J,42:[1,204],43:31,44:ht,46:tt,48:kt,50:35,51:45,52:at,54:46,66:ut,67:vt,86:Zt,87:Gt,88:xt,89:It,90:wt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,118:Ct,119:$t,120:be,121:We,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},{22:de,30:205},{22:[1,206],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:178,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:[1,207]},{22:[1,208]},{22:[1,209],106:[1,210]},u(Nn,[2,123]),{22:[1,211]},{22:[1,212],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:178,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:[1,213],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:178,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{84:[1,214]},u(Ye,[2,103],{22:[1,215]}),{84:[1,216],101:[1,217]},{84:[1,218]},u(Tr,[2,153]),{84:[1,219],101:[1,220]},u(An,[2,57],{116:129,52:at,66:ut,67:vt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,122:xe,123:pe,124:_e,125:Ae,126:De,127:me}),{22:Tn,24:Me,26:Ke,38:Xe,41:[1,221],42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,56:[1,222],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:223,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,58:[1,224],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,60:[1,225],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,62:[1,226],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,64:[1,227],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{67:[1,228]},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,70:[1,229],73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,72:[1,230],73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,39:231,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,41:[1,232],42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,73:mn,75:[1,233],77:[1,234],81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,73:mn,75:[1,236],77:[1,235],81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{9:237,20:ne,21:Qt,23:se},u(Et,[2,52],{52:Dr}),u(Dn,[2,77]),u(Dn,[2,76]),{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,68:[1,238],73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Dn,[2,79]),u(Sn,[2,83]),{22:Tn,24:Me,26:Ke,38:Xe,39:239,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(fa,F,{17:240}),u(Qe,[2,43]),{51:241,52:at,54:46,66:ut,67:vt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},{22:_r,66:Cr,67:yr,86:qr,96:242,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{22:_r,66:Cr,67:yr,86:qr,96:256,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{22:_r,66:Cr,67:yr,86:qr,96:257,102:Dt,104:[1,258],105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{22:_r,66:Cr,67:yr,86:qr,96:259,102:Dt,104:[1,260],105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{105:[1,261]},{22:_r,66:Cr,67:yr,86:qr,96:262,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{22:_r,66:Cr,67:yr,86:qr,96:263,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{26:te,52:st,66:dt,67:ft,91:Mt,97:264,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ye,[2,102]),{84:[1,265]},u(Ye,[2,106],{22:[1,266]}),u(Ye,[2,107]),u(Ye,[2,110]),u(Ye,[2,112],{22:[1,267]}),u(Ye,[2,113]),u(Ie,[2,58]),u(Ie,[2,59]),{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,58:[1,268],66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ie,[2,66]),u(Ie,[2,61]),u(Ie,[2,62]),u(Ie,[2,63]),{66:[1,269]},u(Ie,[2,65]),u(Ie,[2,67]),{22:Tn,24:Me,26:Ke,38:Xe,42:Ee,52:st,66:dt,67:ft,72:[1,270],73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ie,[2,69]),u(Ie,[2,70]),u(Ie,[2,72]),u(Ie,[2,71]),u(Ie,[2,73]),u(oi,[2,4]),u([22,52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,81]),{22:Tn,24:Me,26:Ke,38:Xe,41:[1,271],42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{18:18,19:19,20:B,21:P,22:G,23:K,32:24,33:25,34:26,35:27,36:28,37:29,38:J,42:[1,272],43:31,44:ht,46:tt,48:kt,50:35,51:45,52:at,54:46,66:ut,67:vt,86:Zt,87:Gt,88:xt,89:It,90:wt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,118:Ct,119:$t,120:be,121:We,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},u(An,[2,56]),u(Ye,[2,115],{106:Qr}),u(xa,[2,125],{108:274,22:_r,66:Cr,67:yr,86:qr,102:Dt,105:Ar,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir}),u(cr,[2,127]),u(cr,[2,129]),u(cr,[2,130]),u(cr,[2,131]),u(cr,[2,132]),u(cr,[2,133]),u(cr,[2,134]),u(cr,[2,135]),u(cr,[2,136]),u(cr,[2,137]),u(cr,[2,138]),u(cr,[2,139]),u(Ye,[2,116],{106:Qr}),u(Ye,[2,117],{106:Qr}),{22:[1,275]},u(Ye,[2,118],{106:Qr}),{22:[1,276]},u(Nn,[2,124]),u(Ye,[2,98],{106:Qr}),u(Ye,[2,99],{106:Qr}),u(Ye,[2,100],{115:100,117:178,26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re}),u(Ye,[2,104]),{101:[1,277]},{101:[1,278]},{58:[1,279]},{68:[1,280]},{72:[1,281]},{9:282,20:ne,21:Qt,23:se},u(Qe,[2,42]),{22:_r,66:Cr,67:yr,86:qr,102:Dt,105:Ar,107:283,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},u(cr,[2,128]),{26:te,52:st,66:dt,67:ft,91:Mt,97:284,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{26:te,52:st,66:dt,67:ft,91:Mt,97:285,105:fe,106:Le,109:en,111:qe,112:sn,115:100,117:98,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ye,[2,108]),u(Ye,[2,114]),u(Ie,[2,60]),{22:Tn,24:Me,26:Ke,38:Xe,39:286,42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:140,84:vr,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},u(Ie,[2,68]),u(fa,F,{17:287}),u(xa,[2,126],{108:274,22:_r,66:Cr,67:yr,86:qr,102:Dt,105:Ar,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir}),u(Ye,[2,121],{115:100,117:178,22:[1,288],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re}),u(Ye,[2,122],{115:100,117:178,22:[1,289],26:te,52:st,66:dt,67:ft,91:Mt,105:fe,106:Le,109:en,111:qe,112:sn,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re}),{22:Tn,24:Me,26:Ke,38:Xe,41:[1,290],42:Ee,52:st,66:dt,67:ft,73:mn,81:At,83:201,85:151,86:Yt,87:Un,88:Rn,89:Vn,90:Mn,91:Hn,92:In,94:142,95:En,105:fe,106:Le,109:Fn,111:qe,112:sn,113:Pn,114:jn,115:148,122:Fe,123:Te,124:Oe,125:Be,126:ge,127:re},{18:18,19:19,20:B,21:P,22:G,23:K,32:24,33:25,34:26,35:27,36:28,37:29,38:J,42:[1,291],43:31,44:ht,46:tt,48:kt,50:35,51:45,52:at,54:46,66:ut,67:vt,86:Zt,87:Gt,88:xt,89:It,90:wt,91:mt,95:X,105:ot,106:j,109:yt,111:Y,112:bt,116:47,118:Ct,119:$t,120:be,121:We,122:xe,123:pe,124:_e,125:Ae,126:De,127:me},{22:_r,66:Cr,67:yr,86:qr,96:292,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},{22:_r,66:Cr,67:yr,86:qr,96:293,102:Dt,105:Ar,107:243,108:244,109:Nr,110:Gn,111:Zr,112:Ur,113:Ir},u(Ie,[2,64]),u(Qe,[2,41]),u(Ye,[2,119],{106:Qr}),u(Ye,[2,120],{106:Qr})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],132:[2,7]},parseError:function(rn,Zn){if(!Zn.recoverable){var an=new Error(rn);throw an.hash=Zn,an}this.trace(rn)},parse:function(rn){var Zn=this,an=[0],nn=[],nr=[null],qt=[],wi=this.table,Kt="",xr=0,Or=0,Vr=0,li=2,ka=1,hr=qt.slice.call(arguments,1),xn=Object.create(this.lexer),ra={yy:{}};for(var On in this.yy)Object.prototype.hasOwnProperty.call(this.yy,On)&&(ra.yy[On]=this.yy[On]);xn.setInput(rn,ra.yy),ra.yy.lexer=xn,ra.yy.parser=this,xn.yylloc===void 0&&(xn.yylloc={});var bi=xn.yylloc;qt.push(bi);var si=xn.options&&xn.options.ranges;function Oi(){var ti;return typeof(ti=nn.pop()||xn.lex()||ka)!="number"&&(ti instanceof Array&&(ti=(nn=ti).pop()),ti=Zn.symbols_[ti]||ti),ti}typeof ra.yy.parseError=="function"?this.parseError=ra.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var lr,Kr,Hr,Gr,ni,Ti,Xr,wa,Ba,pr={};;){if(Hr=an[an.length-1],this.defaultActions[Hr]?Gr=this.defaultActions[Hr]:(lr==null&&(lr=Oi()),Gr=wi[Hr]&&wi[Hr][lr]),Gr===void 0||!Gr.length||!Gr[0]){var Jr="";for(Ti in Ba=[],wi[Hr])this.terminals_[Ti]&&Ti>li&&Ba.push("'"+this.terminals_[Ti]+"'");Jr=xn.showPosition?"Parse error on line "+(xr+1)+`: `+xn.showPosition()+` Expecting `+Ba.join(", ")+", got '"+(this.terminals_[lr]||lr)+"'":"Parse error on line "+(xr+1)+": Unexpected "+(lr==ka?"end of input":"'"+(this.terminals_[lr]||lr)+"'"),this.parseError(Jr,{text:xn.match,token:this.terminals_[lr]||lr,line:xn.yylineno,loc:bi,expected:Ba})}if(Gr[0]instanceof Array&&Gr.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Hr+", token: "+lr);switch(Gr[0]){case 1:an.push(lr),nr.push(xn.yytext),qt.push(xn.yylloc),an.push(Gr[1]),lr=null,Kr?(lr=Kr,Kr=null):(Or=xn.yyleng,Kt=xn.yytext,xr=xn.yylineno,bi=xn.yylloc,Vr>0);break;case 2:if(Xr=this.productions_[Gr[1]][1],pr.$=nr[nr.length-Xr],pr._$={first_line:qt[qt.length-(Xr||1)].first_line,last_line:qt[qt.length-1].last_line,first_column:qt[qt.length-(Xr||1)].first_column,last_column:qt[qt.length-1].last_column},si&&(pr._$.range=[qt[qt.length-(Xr||1)].range[0],qt[qt.length-1].range[1]]),(ni=this.performAction.apply(pr,[Kt,Or,xr,ra.yy,Gr[1],nr,qt].concat(hr)))!==void 0)return ni;Xr&&(an=an.slice(0,-1*Xr*2),nr=nr.slice(0,-1*Xr),qt=qt.slice(0,-1*Xr)),an.push(this.productions_[Gr[1]][0]),nr.push(pr.$),qt.push(pr._$),wa=wi[an[an.length-2]][an[an.length-1]],an.push(wa);break;case 3:return!0}}return!0}},na={EOF:1,parseError:function(rn,Zn){if(!this.yy.parser)throw new Error(rn);this.yy.parser.parseError(rn,Zn)},setInput:function(rn,Zn){return this.yy=Zn||this.yy||{},this._input=rn,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 rn=this._input[0];return this.yytext+=rn,this.yyleng++,this.offset++,this.match+=rn,this.matched+=rn,rn.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rn},unput:function(rn){var Zn=rn.length,an=rn.split(/(?:\r\n?|\n)/g);this._input=rn+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Zn),this.offset-=Zn;var nn=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),an.length-1&&(this.yylineno-=an.length-1);var nr=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:an?(an.length===nn.length?this.yylloc.first_column:0)+nn[nn.length-an.length].length-an[0].length:this.yylloc.first_column-Zn},this.options.ranges&&(this.yylloc.range=[nr[0],nr[0]+this.yyleng-Zn]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(rn){this.unput(this.match.slice(rn))},pastInput:function(){var rn=this.matched.substr(0,this.matched.length-this.match.length);return(rn.length>20?"...":"")+rn.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rn=this.match;return rn.length<20&&(rn+=this._input.substr(0,20-rn.length)),(rn.substr(0,20)+(rn.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rn=this.pastInput(),Zn=new Array(rn.length+1).join("-");return rn+this.upcomingInput()+` `+Zn+"^"},test_match:function(rn,Zn){var an,nn,nr;if(this.options.backtrack_lexer&&(nr={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&&(nr.yylloc.range=this.yylloc.range.slice(0))),(nn=rn[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=nn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:nn?nn[nn.length-1].length-nn[nn.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rn[0].length},this.yytext+=rn[0],this.match+=rn[0],this.matches=rn,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(rn[0].length),this.matched+=rn[0],an=this.performAction.call(this,this.yy,this,Zn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),an)return an;if(this._backtrack){for(var qt in nr)this[qt]=nr[qt];return!1}return!1},next:function(){if(this.done)return this.EOF;var rn,Zn,an,nn;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var nr=this._currentRules(),qt=0;qtZn[0].length)){if(Zn=an,nn=qt,this.options.backtrack_lexer){if((rn=this.test_match(an,nr[qt]))!==!1)return rn;if(this._backtrack){Zn=!1;continue}return!1}if(!this.options.flex)break}return Zn?(rn=this.test_match(Zn,nr[nn]))!==!1&&rn:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(rn){this.conditionStack.push(rn)},popState:function(){return this.conditionStack.length-1>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(rn){return(rn=this.conditionStack.length-1-Math.abs(rn||0))>=0?this.conditionStack[rn]:"INITIAL"},pushState:function(rn){this.begin(rn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(rn,Zn,an,nn){switch(an){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:case 6:break;case 7:return this.begin("acc_title"),44;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),46;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:case 15:case 24:case 27:case 30:case 33:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:this.begin("string");break;case 16:return"STR";case 17:return 86;case 18:return 95;case 19:return 87;case 20:return 104;case 21:return 88;case 22:return 89;case 23:this.begin("href");break;case 25:return 100;case 26:this.begin("callbackname");break;case 28:this.popState(),this.begin("callbackargs");break;case 29:return 98;case 31:return 99;case 32:this.begin("click");break;case 34:return 90;case 35:case 36:return rn.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 42;case 39:case 40:case 41:case 42:return 101;case 43:return this.popState(),25;case 44:case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:return this.popState(),26;case 54:return 118;case 55:return 119;case 56:return 120;case 57:return 121;case 58:return 105;case 59:return 111;case 60:return 53;case 61:return 67;case 62:return 52;case 63:return 20;case 64:return 106;case 65:return 126;case 66:case 67:case 68:return 82;case 69:case 70:case 71:return 81;case 72:return 59;case 73:return 60;case 74:return 61;case 75:return 62;case 76:return 63;case 77:return 64;case 78:return 65;case 79:return 69;case 80:return 70;case 81:return 55;case 82:return 56;case 83:return 109;case 84:return 112;case 85:return 127;case 86:return 124;case 87:return 113;case 88:case 89:return 125;case 90:return 114;case 91:return 73;case 92:return 92;case 93:return"SEP";case 94:return 91;case 95:return 66;case 96:return 75;case 97:return 74;case 98:return 77;case 99:return 76;case 100:return 122;case 101:return 123;case 102:return 68;case 103:return 57;case 104:return 58;case 105:return 40;case 106:return 41;case 107:return 71;case 108:return 72;case 109:return 133;case 110:return 21;case 111:return 22;case 112:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)[^\n]*)/,/^(?:[^\}]%%[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\[)/,/^(?:\]\))/,/^(?:\[\[)/,/^(?:\]\])/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\])/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:-)/,/^(?:\.)/,/^(?:[\_])/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:[A-Za-z]+)/,/^(?:\\\])/,/^(?:\[\/)/,/^(?:\/\])/,/^(?:\[\\)/,/^(?:[!"#$%&'*+,-.`?\\_/])/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\{)/,/^(?:\})/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[30,31],inclusive:!1},callbackname:{rules:[27,28,29],inclusive:!1},href:{rules:[24,25],inclusive:!1},click:{rules:[33,34],inclusive:!1},vertex:{rules:[],inclusive:!1},dir:{rules:[43,44,45,46,47,48,49,50,51,52,53],inclusive:!1},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,5,6,7,9,11,14,17,18,19,20,21,22,23,26,32,35,36,37,38,39,40,41,42,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112],inclusive:!0}}};function Ni(){this.yy={}}return ea.lexer=na,Ni.prototype=ea,ea.Parser=Ni,new Ni}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(5354).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},9959:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(mt,X,ot,j){for(ot=ot||{},j=mt.length;j--;ot[mt[j]]=X);return ot},_=[1,3],y=[1,5],E=[7,9,11,12,13,14,15,16,17,18,19,20,22,24,25,27,34,39],A=[1,15],w=[1,16],F=[1,17],B=[1,18],P=[1,19],G=[1,20],K=[1,21],J=[1,22],ht=[1,23],tt=[1,24],kt=[1,25],at=[1,26],ut=[1,28],vt=[1,30],Zt=[1,33],Gt=[5,7,9,11,12,13,14,15,16,17,18,19,20,22,24,25,27,34,39],xt={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,dateFormat:12,inclusiveEndDates:13,topAxis:14,axisFormat:15,excludes:16,includes:17,todayMarker:18,title:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,clickStatement:26,taskTxt:27,taskData:28,openDirective:29,typeDirective:30,closeDirective:31,":":32,argDirective:33,click:34,callbackname:35,callbackargs:36,href:37,clickStatementDebug:38,open_directive:39,type_directive:40,arg_directive:41,close_directive:42,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",12:"dateFormat",13:"inclusiveEndDates",14:"topAxis",15:"axisFormat",16:"excludes",17:"includes",18:"todayMarker",19:"title",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"taskTxt",28:"taskData",32:":",34:"click",35:"callbackname",36:"callbackargs",37:"href",39:"open_directive",40:"type_directive",41:"arg_directive",42:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[26,2],[26,3],[26,3],[26,4],[26,3],[26,4],[26,2],[38,2],[38,3],[38,3],[38,4],[38,3],[38,4],[38,2],[29,1],[30,1],[33,1],[31,1]],performAction:function(mt,X,ot,j,yt,Y,bt){var Ct=Y.length-1;switch(yt){case 2:return Y[Ct-1];case 3:case 7:case 8:this.$=[];break;case 4:Y[Ct-1].push(Y[Ct]),this.$=Y[Ct-1];break;case 5:case 6:this.$=Y[Ct];break;case 9:j.setDateFormat(Y[Ct].substr(11)),this.$=Y[Ct].substr(11);break;case 10:j.enableInclusiveEndDates(),this.$=Y[Ct].substr(18);break;case 11:j.TopAxis(),this.$=Y[Ct].substr(8);break;case 12:j.setAxisFormat(Y[Ct].substr(11)),this.$=Y[Ct].substr(11);break;case 13:j.setExcludes(Y[Ct].substr(9)),this.$=Y[Ct].substr(9);break;case 14:j.setIncludes(Y[Ct].substr(9)),this.$=Y[Ct].substr(9);break;case 15:j.setTodayMarker(Y[Ct].substr(12)),this.$=Y[Ct].substr(12);break;case 16:j.setDiagramTitle(Y[Ct].substr(6)),this.$=Y[Ct].substr(6);break;case 17:this.$=Y[Ct].trim(),j.setAccTitle(this.$);break;case 18:case 19:this.$=Y[Ct].trim(),j.setAccDescription(this.$);break;case 20:j.addSection(Y[Ct].substr(8)),this.$=Y[Ct].substr(8);break;case 22:j.addTask(Y[Ct-1],Y[Ct]),this.$="task";break;case 26:this.$=Y[Ct-1],j.setClickEvent(Y[Ct-1],Y[Ct],null);break;case 27:this.$=Y[Ct-2],j.setClickEvent(Y[Ct-2],Y[Ct-1],Y[Ct]);break;case 28:this.$=Y[Ct-2],j.setClickEvent(Y[Ct-2],Y[Ct-1],null),j.setLink(Y[Ct-2],Y[Ct]);break;case 29:this.$=Y[Ct-3],j.setClickEvent(Y[Ct-3],Y[Ct-2],Y[Ct-1]),j.setLink(Y[Ct-3],Y[Ct]);break;case 30:this.$=Y[Ct-2],j.setClickEvent(Y[Ct-2],Y[Ct],null),j.setLink(Y[Ct-2],Y[Ct-1]);break;case 31:this.$=Y[Ct-3],j.setClickEvent(Y[Ct-3],Y[Ct-1],Y[Ct]),j.setLink(Y[Ct-3],Y[Ct-2]);break;case 32:this.$=Y[Ct-1],j.setLink(Y[Ct-1],Y[Ct]);break;case 33:case 39:this.$=Y[Ct-1]+" "+Y[Ct];break;case 34:case 35:case 37:this.$=Y[Ct-2]+" "+Y[Ct-1]+" "+Y[Ct];break;case 36:case 38:this.$=Y[Ct-3]+" "+Y[Ct-2]+" "+Y[Ct-1]+" "+Y[Ct];break;case 40:j.parseDirective("%%{","open_directive");break;case 41:j.parseDirective(Y[Ct],"type_directive");break;case 42:Y[Ct]=Y[Ct].trim().replace(/'/g,'"'),j.parseDirective(Y[Ct],"arg_directive");break;case 43:j.parseDirective("}%%","close_directive","gantt")}},table:[{3:1,4:2,5:_,29:4,39:y},{1:[3]},{3:6,4:2,5:_,29:4,39:y},u(E,[2,3],{6:7}),{30:8,40:[1,9]},{40:[2,40]},{1:[2,1]},{4:29,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:A,13:w,14:F,15:B,16:P,17:G,18:K,19:J,20:ht,22:tt,24:kt,25:at,26:27,27:ut,29:4,34:vt,39:y},{31:31,32:[1,32],42:Zt},u([32,42],[2,41]),u(E,[2,8],{1:[2,2]}),u(E,[2,4]),{4:29,10:34,12:A,13:w,14:F,15:B,16:P,17:G,18:K,19:J,20:ht,22:tt,24:kt,25:at,26:27,27:ut,29:4,34:vt,39:y},u(E,[2,6]),u(E,[2,7]),u(E,[2,9]),u(E,[2,10]),u(E,[2,11]),u(E,[2,12]),u(E,[2,13]),u(E,[2,14]),u(E,[2,15]),u(E,[2,16]),{21:[1,35]},{23:[1,36]},u(E,[2,19]),u(E,[2,20]),u(E,[2,21]),{28:[1,37]},u(E,[2,23]),{35:[1,38],37:[1,39]},{11:[1,40]},{33:41,41:[1,42]},{11:[2,43]},u(E,[2,5]),u(E,[2,17]),u(E,[2,18]),u(E,[2,22]),u(E,[2,26],{36:[1,43],37:[1,44]}),u(E,[2,32],{35:[1,45]}),u(Gt,[2,24]),{31:46,42:Zt},{42:[2,42]},u(E,[2,27],{37:[1,47]}),u(E,[2,28]),u(E,[2,30],{36:[1,48]}),{11:[1,49]},u(E,[2,29]),u(E,[2,31]),u(Gt,[2,25])],defaultActions:{5:[2,40],6:[2,1],33:[2,43],42:[2,42]},parseError:function(mt,X){if(!X.recoverable){var ot=new Error(mt);throw ot.hash=X,ot}this.trace(mt)},parse:function(mt){var X=this,ot=[0],j=[],yt=[null],Y=[],bt=this.table,Ct="",$t=0,be=0,We=0,xe=2,pe=1,_e=Y.slice.call(arguments,1),Ae=Object.create(this.lexer),De={yy:{}};for(var me in this.yy)Object.prototype.hasOwnProperty.call(this.yy,me)&&(De.yy[me]=this.yy[me]);Ae.setInput(mt,De.yy),De.yy.lexer=Ae,De.yy.parser=this,Ae.yylloc===void 0&&(Ae.yylloc={});var wn=Ae.yylloc;Y.push(wn);var de=Ae.options&&Ae.options.ranges;function Qe(){var en;return typeof(en=j.pop()||Ae.lex()||pe)!="number"&&(en instanceof Array&&(en=(j=en).pop()),en=X.symbols_[en]||en),en}typeof De.yy.parseError=="function"?this.parseError=De.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var ne,Qt,se,Et,te,st,dt,ft,Mt,fe={};;){if(se=ot[ot.length-1],this.defaultActions[se]?Et=this.defaultActions[se]:(ne==null&&(ne=Qe()),Et=bt[se]&&bt[se][ne]),Et===void 0||!Et.length||!Et[0]){var Le="";for(st in Mt=[],bt[se])this.terminals_[st]&&st>xe&&Mt.push("'"+this.terminals_[st]+"'");Le=Ae.showPosition?"Parse error on line "+($t+1)+`: `+Ae.showPosition()+` Expecting `+Mt.join(", ")+", got '"+(this.terminals_[ne]||ne)+"'":"Parse error on line "+($t+1)+": Unexpected "+(ne==pe?"end of input":"'"+(this.terminals_[ne]||ne)+"'"),this.parseError(Le,{text:Ae.match,token:this.terminals_[ne]||ne,line:Ae.yylineno,loc:wn,expected:Mt})}if(Et[0]instanceof Array&&Et.length>1)throw new Error("Parse Error: multiple actions possible at state: "+se+", token: "+ne);switch(Et[0]){case 1:ot.push(ne),yt.push(Ae.yytext),Y.push(Ae.yylloc),ot.push(Et[1]),ne=null,Qt?(ne=Qt,Qt=null):(be=Ae.yyleng,Ct=Ae.yytext,$t=Ae.yylineno,wn=Ae.yylloc,We>0);break;case 2:if(dt=this.productions_[Et[1]][1],fe.$=yt[yt.length-dt],fe._$={first_line:Y[Y.length-(dt||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(dt||1)].first_column,last_column:Y[Y.length-1].last_column},de&&(fe._$.range=[Y[Y.length-(dt||1)].range[0],Y[Y.length-1].range[1]]),(te=this.performAction.apply(fe,[Ct,be,$t,De.yy,Et[1],yt,Y].concat(_e)))!==void 0)return te;dt&&(ot=ot.slice(0,-1*dt*2),yt=yt.slice(0,-1*dt),Y=Y.slice(0,-1*dt)),ot.push(this.productions_[Et[1]][0]),yt.push(fe.$),Y.push(fe._$),ft=bt[ot[ot.length-2]][ot[ot.length-1]],ot.push(ft);break;case 3:return!0}}return!0}},It={EOF:1,parseError:function(mt,X){if(!this.yy.parser)throw new Error(mt);this.yy.parser.parseError(mt,X)},setInput:function(mt,X){return this.yy=X||this.yy||{},this._input=mt,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 mt=this._input[0];return this.yytext+=mt,this.yyleng++,this.offset++,this.match+=mt,this.matched+=mt,mt.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),mt},unput:function(mt){var X=mt.length,ot=mt.split(/(?:\r\n?|\n)/g);this._input=mt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-X),this.offset-=X;var j=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),ot.length-1&&(this.yylineno-=ot.length-1);var yt=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:ot?(ot.length===j.length?this.yylloc.first_column:0)+j[j.length-ot.length].length-ot[0].length:this.yylloc.first_column-X},this.options.ranges&&(this.yylloc.range=[yt[0],yt[0]+this.yyleng-X]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(mt){this.unput(this.match.slice(mt))},pastInput:function(){var mt=this.matched.substr(0,this.matched.length-this.match.length);return(mt.length>20?"...":"")+mt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var mt=this.match;return mt.length<20&&(mt+=this._input.substr(0,20-mt.length)),(mt.substr(0,20)+(mt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var mt=this.pastInput(),X=new Array(mt.length+1).join("-");return mt+this.upcomingInput()+` `+X+"^"},test_match:function(mt,X){var ot,j,yt;if(this.options.backtrack_lexer&&(yt={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&&(yt.yylloc.range=this.yylloc.range.slice(0))),(j=mt[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=j.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:j?j[j.length-1].length-j[j.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mt[0].length},this.yytext+=mt[0],this.match+=mt[0],this.matches=mt,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(mt[0].length),this.matched+=mt[0],ot=this.performAction.call(this,this.yy,this,X,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ot)return ot;if(this._backtrack){for(var Y in yt)this[Y]=yt[Y];return!1}return!1},next:function(){if(this.done)return this.EOF;var mt,X,ot,j;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var yt=this._currentRules(),Y=0;YX[0].length)){if(X=ot,j=Y,this.options.backtrack_lexer){if((mt=this.test_match(ot,yt[Y]))!==!1)return mt;if(this._backtrack){X=!1;continue}return!1}if(!this.options.flex)break}return X?(mt=this.test_match(X,yt[j]))!==!1&&mt:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(mt){this.conditionStack.push(mt)},popState:function(){return this.conditionStack.length-1>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(mt){return(mt=this.conditionStack.length-1-Math.abs(mt||0))>=0?this.conditionStack[mt]:"INITIAL"},pushState:function(mt){this.begin(mt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(mt,X,ot,j){switch(ot){case 0:return this.begin("open_directive"),39;case 1:return this.begin("type_directive"),40;case 2:return this.popState(),this.begin("arg_directive"),32;case 3:return this.popState(),this.popState(),42;case 4:return 41;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:case 20:case 23:case 26:case 29:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:case 13:case 14:case 16:case 17:case 18:break;case 15:return 11;case 19:this.begin("href");break;case 21:return 37;case 22:this.begin("callbackname");break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 35;case 27:return 36;case 28:this.begin("click");break;case 30:return 34;case 31:return 5;case 32:return 12;case 33:return 13;case 34:return 14;case 35:return 15;case 36:return 17;case 37:return 16;case 38:return 18;case 39:return"date";case 40:return 19;case 41:return"accDescription";case 42:return 25;case 43:return 27;case 44:return 28;case 45:return 32;case 46:return 7;case 47:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],inclusive:!0}}};function wt(){this.yy={}}return xt.lexer=It,wt.prototype=xt,xt.Parser=wt,new wt}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(6878).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},2553:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(It,wt,mt,X){for(mt=mt||{},X=It.length;X--;mt[It[X]]=wt);return mt},_=[1,4],y=[1,7],E=[1,5],A=[1,9],w=[1,6],F=[2,6],B=[1,16],P=[6,8,14,20,22,24,25,27,29,32,35,39,49,53],G=[8,14,20,22,24,25,27,29,32,35,39],K=[8,13,14,20,22,24,25,27,29,32,35,39],J=[1,26],ht=[6,8,14,49,53],tt=[8,14,53],kt=[1,64],at=[1,65],ut=[1,66],vt=[8,14,33,38,41,53],Zt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ID:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,MERGE:35,COMMIT_TYPE:36,commitType:37,COMMIT_TAG:38,COMMIT:39,commit_arg:40,COMMIT_MSG:41,NORMAL:42,REVERSE:43,HIGHLIGHT:44,openDirective:45,typeDirective:46,closeDirective:47,argDirective:48,open_directive:49,type_directive:50,arg_directive:51,close_directive:52,";":53,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",28:"ID",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"MERGE",36:"COMMIT_TYPE",38:"COMMIT_TAG",39:"COMMIT",41:"COMMIT_MSG",42:"NORMAL",43:"REVERSE",44:"HIGHLIGHT",49:"open_directive",50:"type_directive",51:"arg_directive",52:"close_directive",53:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[40,0],[40,1],[37,1],[37,1],[37,1],[5,3],[5,5],[45,1],[46,1],[48,1],[47,1],[4,1],[4,1],[4,1]],performAction:function(It,wt,mt,X,ot,j,yt){var Y=j.length-1;switch(ot){case 3:return j[Y];case 4:return j[Y-1];case 5:return X.setDirection(j[Y-3]),j[Y-1];case 7:X.setOptions(j[Y-1]),this.$=j[Y];break;case 8:j[Y-1]+=j[Y],this.$=j[Y-1];break;case 10:this.$=[];break;case 11:j[Y-1].push(j[Y]),this.$=j[Y-1];break;case 12:this.$=j[Y-1];break;case 17:this.$=j[Y].trim(),X.setAccTitle(this.$);break;case 18:case 19:this.$=j[Y].trim(),X.setAccDescription(this.$);break;case 20:X.addSection(j[Y].substr(8)),this.$=j[Y].substr(8);break;case 22:X.checkout(j[Y]);break;case 23:X.branch(j[Y]);break;case 24:X.branch(j[Y-2],j[Y]);break;case 25:X.cherryPick(j[Y]);break;case 26:X.merge(j[Y],"","","");break;case 27:X.merge(j[Y-2],j[Y],"","");break;case 28:X.merge(j[Y-2],"",j[Y],"");break;case 29:X.merge(j[Y-2],"","",j[Y]);break;case 30:X.merge(j[Y-4],j[Y],"",j[Y-2]);break;case 31:X.merge(j[Y-4],"",j[Y],j[Y-2]);break;case 32:X.merge(j[Y-4],"",j[Y-2],j[Y]);break;case 33:X.merge(j[Y-4],j[Y-2],j[Y],"");break;case 34:X.merge(j[Y-4],j[Y-2],"",j[Y]);break;case 35:X.merge(j[Y-4],j[Y],j[Y-2],"");break;case 36:X.merge(j[Y-6],j[Y-4],j[Y-2],j[Y]);break;case 37:X.merge(j[Y-6],j[Y],j[Y-4],j[Y-2]);break;case 38:X.merge(j[Y-6],j[Y-4],j[Y],j[Y-2]);break;case 39:X.merge(j[Y-6],j[Y-2],j[Y-4],j[Y]);break;case 40:X.merge(j[Y-6],j[Y],j[Y-2],j[Y-4]);break;case 41:X.merge(j[Y-6],j[Y-2],j[Y],j[Y-4]);break;case 42:X.commit(j[Y]);break;case 43:X.commit("","",X.commitType.NORMAL,j[Y]);break;case 44:X.commit("","",j[Y],"");break;case 45:X.commit("","",j[Y],j[Y-2]);break;case 46:X.commit("","",j[Y-2],j[Y]);break;case 47:X.commit("",j[Y],X.commitType.NORMAL,"");break;case 48:X.commit("",j[Y-2],X.commitType.NORMAL,j[Y]);break;case 49:X.commit("",j[Y],X.commitType.NORMAL,j[Y-2]);break;case 50:X.commit("",j[Y-2],j[Y],"");break;case 51:X.commit("",j[Y],j[Y-2],"");break;case 52:X.commit("",j[Y-4],j[Y-2],j[Y]);break;case 53:X.commit("",j[Y-4],j[Y],j[Y-2]);break;case 54:X.commit("",j[Y-2],j[Y-4],j[Y]);break;case 55:X.commit("",j[Y],j[Y-4],j[Y-2]);break;case 56:X.commit("",j[Y],j[Y-2],j[Y-4]);break;case 57:X.commit("",j[Y-2],j[Y],j[Y-4]);break;case 58:X.commit(j[Y],"",X.commitType.NORMAL,"");break;case 59:X.commit(j[Y],"",X.commitType.NORMAL,j[Y-2]);break;case 60:X.commit(j[Y-2],"",X.commitType.NORMAL,j[Y]);break;case 61:X.commit(j[Y-2],"",j[Y],"");break;case 62:X.commit(j[Y],"",j[Y-2],"");break;case 63:X.commit(j[Y],j[Y-2],X.commitType.NORMAL,"");break;case 64:X.commit(j[Y-2],j[Y],X.commitType.NORMAL,"");break;case 65:X.commit(j[Y-4],"",j[Y-2],j[Y]);break;case 66:X.commit(j[Y-4],"",j[Y],j[Y-2]);break;case 67:X.commit(j[Y-2],"",j[Y-4],j[Y]);break;case 68:X.commit(j[Y],"",j[Y-4],j[Y-2]);break;case 69:X.commit(j[Y],"",j[Y-2],j[Y-4]);break;case 70:X.commit(j[Y-2],"",j[Y],j[Y-4]);break;case 71:X.commit(j[Y-4],j[Y],j[Y-2],"");break;case 72:X.commit(j[Y-4],j[Y-2],j[Y],"");break;case 73:X.commit(j[Y-2],j[Y],j[Y-4],"");break;case 74:X.commit(j[Y],j[Y-2],j[Y-4],"");break;case 75:X.commit(j[Y],j[Y-4],j[Y-2],"");break;case 76:X.commit(j[Y-2],j[Y-4],j[Y],"");break;case 77:X.commit(j[Y-4],j[Y],X.commitType.NORMAL,j[Y-2]);break;case 78:X.commit(j[Y-4],j[Y-2],X.commitType.NORMAL,j[Y]);break;case 79:X.commit(j[Y-2],j[Y],X.commitType.NORMAL,j[Y-4]);break;case 80:X.commit(j[Y],j[Y-2],X.commitType.NORMAL,j[Y-4]);break;case 81:X.commit(j[Y],j[Y-4],X.commitType.NORMAL,j[Y-2]);break;case 82:X.commit(j[Y-2],j[Y-4],X.commitType.NORMAL,j[Y]);break;case 83:X.commit(j[Y-6],j[Y-4],j[Y-2],j[Y]);break;case 84:X.commit(j[Y-6],j[Y-4],j[Y],j[Y-2]);break;case 85:X.commit(j[Y-6],j[Y-2],j[Y-4],j[Y]);break;case 86:X.commit(j[Y-6],j[Y],j[Y-4],j[Y-2]);break;case 87:X.commit(j[Y-6],j[Y-2],j[Y],j[Y-4]);break;case 88:X.commit(j[Y-6],j[Y],j[Y-2],j[Y-4]);break;case 89:X.commit(j[Y-4],j[Y-6],j[Y-2],j[Y]);break;case 90:X.commit(j[Y-4],j[Y-6],j[Y],j[Y-2]);break;case 91:X.commit(j[Y-2],j[Y-6],j[Y-4],j[Y]);break;case 92:X.commit(j[Y],j[Y-6],j[Y-4],j[Y-2]);break;case 93:X.commit(j[Y-2],j[Y-6],j[Y],j[Y-4]);break;case 94:X.commit(j[Y],j[Y-6],j[Y-2],j[Y-4]);break;case 95:X.commit(j[Y],j[Y-4],j[Y-2],j[Y-6]);break;case 96:X.commit(j[Y-2],j[Y-4],j[Y],j[Y-6]);break;case 97:X.commit(j[Y],j[Y-2],j[Y-4],j[Y-6]);break;case 98:X.commit(j[Y-2],j[Y],j[Y-4],j[Y-6]);break;case 99:X.commit(j[Y-4],j[Y-2],j[Y],j[Y-6]);break;case 100:X.commit(j[Y-4],j[Y],j[Y-2],j[Y-6]);break;case 101:X.commit(j[Y-2],j[Y-4],j[Y-6],j[Y]);break;case 102:X.commit(j[Y],j[Y-4],j[Y-6],j[Y-2]);break;case 103:X.commit(j[Y-2],j[Y],j[Y-6],j[Y-4]);break;case 104:X.commit(j[Y],j[Y-2],j[Y-6],j[Y-4]);break;case 105:X.commit(j[Y-4],j[Y-2],j[Y-6],j[Y]);break;case 106:X.commit(j[Y-4],j[Y],j[Y-6],j[Y-2]);break;case 107:this.$="";break;case 108:this.$=j[Y];break;case 109:this.$=X.commitType.NORMAL;break;case 110:this.$=X.commitType.REVERSE;break;case 111:this.$=X.commitType.HIGHLIGHT;break;case 114:X.parseDirective("%%{","open_directive");break;case 115:X.parseDirective(j[Y],"type_directive");break;case 116:j[Y]=j[Y].trim().replace(/'/g,'"'),X.parseDirective(j[Y],"arg_directive");break;case 117:X.parseDirective("}%%","close_directive","gitGraph")}},table:[{3:1,4:2,5:3,6:_,8:y,14:E,45:8,49:A,53:w},{1:[3]},{3:10,4:2,5:3,6:_,8:y,14:E,45:8,49:A,53:w},{3:11,4:2,5:3,6:_,8:y,14:E,45:8,49:A,53:w},{7:12,8:F,9:[1,13],10:[1,14],11:15,14:B},u(P,[2,118]),u(P,[2,119]),u(P,[2,120]),{46:17,50:[1,18]},{50:[2,114]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:F,11:15,14:B},{9:[1,21]},u(G,[2,10],{12:22,13:[1,23]}),u(K,[2,9]),{9:[1,25],47:24,52:J},u([9,52],[2,115]),{1:[2,3]},{8:[1,27]},{7:28,8:F,11:15,14:B},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],35:[1,42],39:[1,41]},u(K,[2,8]),u(ht,[2,112]),{48:45,51:[1,46]},u(ht,[2,117]),{1:[2,4]},{8:[1,47]},u(G,[2,11]),{4:48,8:y,14:E,53:w},u(G,[2,13]),u(tt,[2,14]),u(tt,[2,15]),u(tt,[2,16]),{21:[1,49]},{23:[1,50]},u(tt,[2,19]),u(tt,[2,20]),u(tt,[2,21]),{28:[1,51]},u(tt,[2,107],{40:52,33:[1,55],34:[1,57],36:[1,54],38:[1,53],41:[1,56]}),{28:[1,58]},{33:[1,59]},{28:[1,60]},{47:61,52:J},{52:[2,116]},{1:[2,5]},u(G,[2,12]),u(tt,[2,17]),u(tt,[2,18]),u(tt,[2,22]),u(tt,[2,42]),{34:[1,62]},{37:63,42:kt,43:at,44:ut},{34:[1,67]},{34:[1,68]},u(tt,[2,108]),u(tt,[2,26],{33:[1,69],36:[1,70],38:[1,71]}),{34:[1,72]},u(tt,[2,23],{30:[1,73]}),u(ht,[2,113]),u(tt,[2,43],{33:[1,75],36:[1,74],41:[1,76]}),u(tt,[2,44],{33:[1,78],38:[1,77],41:[1,79]}),u(vt,[2,109]),u(vt,[2,110]),u(vt,[2,111]),u(tt,[2,47],{36:[1,81],38:[1,80],41:[1,82]}),u(tt,[2,58],{33:[1,85],36:[1,84],38:[1,83]}),{34:[1,86]},{37:87,42:kt,43:at,44:ut},{34:[1,88]},u(tt,[2,25]),{31:[1,89]},{37:90,42:kt,43:at,44:ut},{34:[1,91]},{34:[1,92]},{34:[1,93]},{34:[1,94]},{34:[1,95]},{34:[1,96]},{37:97,42:kt,43:at,44:ut},{34:[1,98]},{34:[1,99]},{37:100,42:kt,43:at,44:ut},{34:[1,101]},u(tt,[2,27],{36:[1,102],38:[1,103]}),u(tt,[2,28],{33:[1,105],38:[1,104]}),u(tt,[2,29],{33:[1,106],36:[1,107]}),u(tt,[2,24]),u(tt,[2,45],{33:[1,108],41:[1,109]}),u(tt,[2,49],{36:[1,110],41:[1,111]}),u(tt,[2,59],{33:[1,113],36:[1,112]}),u(tt,[2,46],{33:[1,114],41:[1,115]}),u(tt,[2,51],{38:[1,116],41:[1,117]}),u(tt,[2,62],{33:[1,119],38:[1,118]}),u(tt,[2,48],{36:[1,120],41:[1,121]}),u(tt,[2,50],{38:[1,122],41:[1,123]}),u(tt,[2,63],{36:[1,124],38:[1,125]}),u(tt,[2,60],{33:[1,127],36:[1,126]}),u(tt,[2,61],{33:[1,129],38:[1,128]}),u(tt,[2,64],{36:[1,130],38:[1,131]}),{37:132,42:kt,43:at,44:ut},{34:[1,133]},{34:[1,134]},{34:[1,135]},{34:[1,136]},{37:137,42:kt,43:at,44:ut},{34:[1,138]},{34:[1,139]},{37:140,42:kt,43:at,44:ut},{34:[1,141]},{37:142,42:kt,43:at,44:ut},{34:[1,143]},{34:[1,144]},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{34:[1,149]},{37:150,42:kt,43:at,44:ut},{34:[1,151]},{34:[1,152]},{34:[1,153]},{37:154,42:kt,43:at,44:ut},{34:[1,155]},{37:156,42:kt,43:at,44:ut},{34:[1,157]},{34:[1,158]},{34:[1,159]},{37:160,42:kt,43:at,44:ut},{34:[1,161]},u(tt,[2,33],{38:[1,162]}),u(tt,[2,34],{36:[1,163]}),u(tt,[2,32],{33:[1,164]}),u(tt,[2,35],{38:[1,165]}),u(tt,[2,30],{36:[1,166]}),u(tt,[2,31],{33:[1,167]}),u(tt,[2,56],{41:[1,168]}),u(tt,[2,69],{33:[1,169]}),u(tt,[2,57],{41:[1,170]}),u(tt,[2,80],{36:[1,171]}),u(tt,[2,70],{33:[1,172]}),u(tt,[2,79],{36:[1,173]}),u(tt,[2,55],{41:[1,174]}),u(tt,[2,68],{33:[1,175]}),u(tt,[2,54],{41:[1,176]}),u(tt,[2,74],{38:[1,177]}),u(tt,[2,67],{33:[1,178]}),u(tt,[2,73],{38:[1,179]}),u(tt,[2,53],{41:[1,180]}),u(tt,[2,81],{36:[1,181]}),u(tt,[2,52],{41:[1,182]}),u(tt,[2,75],{38:[1,183]}),u(tt,[2,76],{38:[1,184]}),u(tt,[2,82],{36:[1,185]}),u(tt,[2,66],{33:[1,186]}),u(tt,[2,77],{36:[1,187]}),u(tt,[2,65],{33:[1,188]}),u(tt,[2,71],{38:[1,189]}),u(tt,[2,72],{38:[1,190]}),u(tt,[2,78],{36:[1,191]}),{34:[1,192]},{37:193,42:kt,43:at,44:ut},{34:[1,194]},{34:[1,195]},{37:196,42:kt,43:at,44:ut},{34:[1,197]},{34:[1,198]},{34:[1,199]},{34:[1,200]},{37:201,42:kt,43:at,44:ut},{34:[1,202]},{37:203,42:kt,43:at,44:ut},{34:[1,204]},{34:[1,205]},{34:[1,206]},{34:[1,207]},{34:[1,208]},{34:[1,209]},{34:[1,210]},{37:211,42:kt,43:at,44:ut},{34:[1,212]},{34:[1,213]},{34:[1,214]},{37:215,42:kt,43:at,44:ut},{34:[1,216]},{37:217,42:kt,43:at,44:ut},{34:[1,218]},{34:[1,219]},{34:[1,220]},{37:221,42:kt,43:at,44:ut},u(tt,[2,36]),u(tt,[2,38]),u(tt,[2,37]),u(tt,[2,39]),u(tt,[2,41]),u(tt,[2,40]),u(tt,[2,97]),u(tt,[2,98]),u(tt,[2,95]),u(tt,[2,96]),u(tt,[2,100]),u(tt,[2,99]),u(tt,[2,104]),u(tt,[2,103]),u(tt,[2,102]),u(tt,[2,101]),u(tt,[2,106]),u(tt,[2,105]),u(tt,[2,94]),u(tt,[2,93]),u(tt,[2,92]),u(tt,[2,91]),u(tt,[2,89]),u(tt,[2,90]),u(tt,[2,88]),u(tt,[2,87]),u(tt,[2,86]),u(tt,[2,85]),u(tt,[2,83]),u(tt,[2,84])],defaultActions:{9:[2,114],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,116],47:[2,5]},parseError:function(It,wt){if(!wt.recoverable){var mt=new Error(It);throw mt.hash=wt,mt}this.trace(It)},parse:function(It){var wt=this,mt=[0],X=[],ot=[null],j=[],yt=this.table,Y="",bt=0,Ct=0,$t=0,be=2,We=1,xe=j.slice.call(arguments,1),pe=Object.create(this.lexer),_e={yy:{}};for(var Ae in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ae)&&(_e.yy[Ae]=this.yy[Ae]);pe.setInput(It,_e.yy),_e.yy.lexer=pe,_e.yy.parser=this,pe.yylloc===void 0&&(pe.yylloc={});var De=pe.yylloc;j.push(De);var me=pe.options&&pe.options.ranges;function wn(){var fe;return typeof(fe=X.pop()||pe.lex()||We)!="number"&&(fe instanceof Array&&(fe=(X=fe).pop()),fe=wt.symbols_[fe]||fe),fe}typeof _e.yy.parseError=="function"?this.parseError=_e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var de,Qe,ne,Qt,se,Et,te,st,dt,ft={};;){if(ne=mt[mt.length-1],this.defaultActions[ne]?Qt=this.defaultActions[ne]:(de==null&&(de=wn()),Qt=yt[ne]&&yt[ne][de]),Qt===void 0||!Qt.length||!Qt[0]){var Mt="";for(Et in dt=[],yt[ne])this.terminals_[Et]&&Et>be&&dt.push("'"+this.terminals_[Et]+"'");Mt=pe.showPosition?"Parse error on line "+(bt+1)+`: `+pe.showPosition()+` Expecting `+dt.join(", ")+", got '"+(this.terminals_[de]||de)+"'":"Parse error on line "+(bt+1)+": Unexpected "+(de==We?"end of input":"'"+(this.terminals_[de]||de)+"'"),this.parseError(Mt,{text:pe.match,token:this.terminals_[de]||de,line:pe.yylineno,loc:De,expected:dt})}if(Qt[0]instanceof Array&&Qt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ne+", token: "+de);switch(Qt[0]){case 1:mt.push(de),ot.push(pe.yytext),j.push(pe.yylloc),mt.push(Qt[1]),de=null,Qe?(de=Qe,Qe=null):(Ct=pe.yyleng,Y=pe.yytext,bt=pe.yylineno,De=pe.yylloc,$t>0);break;case 2:if(te=this.productions_[Qt[1]][1],ft.$=ot[ot.length-te],ft._$={first_line:j[j.length-(te||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(te||1)].first_column,last_column:j[j.length-1].last_column},me&&(ft._$.range=[j[j.length-(te||1)].range[0],j[j.length-1].range[1]]),(se=this.performAction.apply(ft,[Y,Ct,bt,_e.yy,Qt[1],ot,j].concat(xe)))!==void 0)return se;te&&(mt=mt.slice(0,-1*te*2),ot=ot.slice(0,-1*te),j=j.slice(0,-1*te)),mt.push(this.productions_[Qt[1]][0]),ot.push(ft.$),j.push(ft._$),st=yt[mt[mt.length-2]][mt[mt.length-1]],mt.push(st);break;case 3:return!0}}return!0}},Gt={EOF:1,parseError:function(It,wt){if(!this.yy.parser)throw new Error(It);this.yy.parser.parseError(It,wt)},setInput:function(It,wt){return this.yy=wt||this.yy||{},this._input=It,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 It=this._input[0];return this.yytext+=It,this.yyleng++,this.offset++,this.match+=It,this.matched+=It,It.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),It},unput:function(It){var wt=It.length,mt=It.split(/(?:\r\n?|\n)/g);this._input=It+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-wt),this.offset-=wt;var X=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),mt.length-1&&(this.yylineno-=mt.length-1);var ot=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:mt?(mt.length===X.length?this.yylloc.first_column:0)+X[X.length-mt.length].length-mt[0].length:this.yylloc.first_column-wt},this.options.ranges&&(this.yylloc.range=[ot[0],ot[0]+this.yyleng-wt]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(It){this.unput(this.match.slice(It))},pastInput:function(){var It=this.matched.substr(0,this.matched.length-this.match.length);return(It.length>20?"...":"")+It.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var It=this.match;return It.length<20&&(It+=this._input.substr(0,20-It.length)),(It.substr(0,20)+(It.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var It=this.pastInput(),wt=new Array(It.length+1).join("-");return It+this.upcomingInput()+` `+wt+"^"},test_match:function(It,wt){var mt,X,ot;if(this.options.backtrack_lexer&&(ot={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&&(ot.yylloc.range=this.yylloc.range.slice(0))),(X=It[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=X.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:X?X[X.length-1].length-X[X.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+It[0].length},this.yytext+=It[0],this.match+=It[0],this.matches=It,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(It[0].length),this.matched+=It[0],mt=this.performAction.call(this,this.yy,this,wt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),mt)return mt;if(this._backtrack){for(var j in ot)this[j]=ot[j];return!1}return!1},next:function(){if(this.done)return this.EOF;var It,wt,mt,X;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var ot=this._currentRules(),j=0;jwt[0].length)){if(wt=mt,X=j,this.options.backtrack_lexer){if((It=this.test_match(mt,ot[j]))!==!1)return It;if(this._backtrack){wt=!1;continue}return!1}if(!this.options.flex)break}return wt?(It=this.test_match(wt,ot[X]))!==!1&&It:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(It){this.conditionStack.push(It)},popState:function(){return this.conditionStack.length-1>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(It){return(It=this.conditionStack.length-1-Math.abs(It||0))>=0?this.conditionStack[It]:"INITIAL"},pushState:function(It){this.begin(It)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(It,wt,mt,X){switch(mt){case 0:return this.begin("open_directive"),49;case 1:return this.begin("type_directive"),50;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),52;case 4:return 51;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:case 35:case 38:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:case 14:case 15:break;case 16:return 6;case 17:return 39;case 18:return 33;case 19:return 36;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 38;case 25:return 29;case 26:return 30;case 27:return 35;case 28:return 32;case 29:return 27;case 30:case 31:return 10;case 32:return 9;case 33:return"CARET";case 34:this.begin("options");break;case 36:return 13;case 37:this.begin("string");break;case 39:return 34;case 40:return 31;case 41:return 28;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit\b)/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch\b)/i,/^(?:order:)/i,/^(?:merge\b)/i,/^(?:cherry-pick\b)/i,/^(?:checkout\b)/i,/^(?:LR\b)/i,/^(?:BT\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+)/i,/^(?:[a-zA-Z][-_\./a-zA-Z0-9]*[-_a-zA-Z0-9])/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[35,36],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,37,40,41,42],inclusive:!0}}};function xt(){this.yy={}}return Zt.lexer=Gt,xt.prototype=Zt,Zt.Parser=xt,new xt}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(8183).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},6765:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(w,F,B,P){for(B=B||{},P=w.length;P--;B[w[P]]=F);return B},_=[6,9,10],y={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(w,F,B,P,G,K,J){switch(K.length,G){case 1:return P;case 4:break;case 6:P.setInfo(!0)}},table:[{3:1,4:[1,2]},{1:[3]},u(_,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},u(_,[2,3]),u(_,[2,4]),u(_,[2,5]),u(_,[2,6])],defaultActions:{4:[2,1]},parseError:function(w,F){if(!F.recoverable){var B=new Error(w);throw B.hash=F,B}this.trace(w)},parse:function(w){var F=this,B=[0],P=[],G=[null],K=[],J=this.table,ht="",tt=0,kt=0,at=0,ut=2,vt=1,Zt=K.slice.call(arguments,1),Gt=Object.create(this.lexer),xt={yy:{}};for(var It in this.yy)Object.prototype.hasOwnProperty.call(this.yy,It)&&(xt.yy[It]=this.yy[It]);Gt.setInput(w,xt.yy),xt.yy.lexer=Gt,xt.yy.parser=this,Gt.yylloc===void 0&&(Gt.yylloc={});var wt=Gt.yylloc;K.push(wt);var mt=Gt.options&&Gt.options.ranges;function X(){var _e;return typeof(_e=P.pop()||Gt.lex()||vt)!="number"&&(_e instanceof Array&&(_e=(P=_e).pop()),_e=F.symbols_[_e]||_e),_e}typeof xt.yy.parseError=="function"?this.parseError=xt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var ot,j,yt,Y,bt,Ct,$t,be,We,xe={};;){if(yt=B[B.length-1],this.defaultActions[yt]?Y=this.defaultActions[yt]:(ot==null&&(ot=X()),Y=J[yt]&&J[yt][ot]),Y===void 0||!Y.length||!Y[0]){var pe="";for(Ct in We=[],J[yt])this.terminals_[Ct]&&Ct>ut&&We.push("'"+this.terminals_[Ct]+"'");pe=Gt.showPosition?"Parse error on line "+(tt+1)+`: `+Gt.showPosition()+` Expecting `+We.join(", ")+", got '"+(this.terminals_[ot]||ot)+"'":"Parse error on line "+(tt+1)+": Unexpected "+(ot==vt?"end of input":"'"+(this.terminals_[ot]||ot)+"'"),this.parseError(pe,{text:Gt.match,token:this.terminals_[ot]||ot,line:Gt.yylineno,loc:wt,expected:We})}if(Y[0]instanceof Array&&Y.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+ot);switch(Y[0]){case 1:B.push(ot),G.push(Gt.yytext),K.push(Gt.yylloc),B.push(Y[1]),ot=null,j?(ot=j,j=null):(kt=Gt.yyleng,ht=Gt.yytext,tt=Gt.yylineno,wt=Gt.yylloc,at>0);break;case 2:if($t=this.productions_[Y[1]][1],xe.$=G[G.length-$t],xe._$={first_line:K[K.length-($t||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-($t||1)].first_column,last_column:K[K.length-1].last_column},mt&&(xe._$.range=[K[K.length-($t||1)].range[0],K[K.length-1].range[1]]),(bt=this.performAction.apply(xe,[ht,kt,tt,xt.yy,Y[1],G,K].concat(Zt)))!==void 0)return bt;$t&&(B=B.slice(0,-1*$t*2),G=G.slice(0,-1*$t),K=K.slice(0,-1*$t)),B.push(this.productions_[Y[1]][0]),G.push(xe.$),K.push(xe._$),be=J[B[B.length-2]][B[B.length-1]],B.push(be);break;case 3:return!0}}return!0}},E={EOF:1,parseError:function(w,F){if(!this.yy.parser)throw new Error(w);this.yy.parser.parseError(w,F)},setInput:function(w,F){return this.yy=F||this.yy||{},this._input=w,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 w=this._input[0];return this.yytext+=w,this.yyleng++,this.offset++,this.match+=w,this.matched+=w,w.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),w},unput:function(w){var F=w.length,B=w.split(/(?:\r\n?|\n)/g);this._input=w+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-F),this.offset-=F;var P=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),B.length-1&&(this.yylineno-=B.length-1);var G=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:B?(B.length===P.length?this.yylloc.first_column:0)+P[P.length-B.length].length-B[0].length:this.yylloc.first_column-F},this.options.ranges&&(this.yylloc.range=[G[0],G[0]+this.yyleng-F]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(w){this.unput(this.match.slice(w))},pastInput:function(){var w=this.matched.substr(0,this.matched.length-this.match.length);return(w.length>20?"...":"")+w.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var w=this.match;return w.length<20&&(w+=this._input.substr(0,20-w.length)),(w.substr(0,20)+(w.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var w=this.pastInput(),F=new Array(w.length+1).join("-");return w+this.upcomingInput()+` `+F+"^"},test_match:function(w,F){var B,P,G;if(this.options.backtrack_lexer&&(G={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&&(G.yylloc.range=this.yylloc.range.slice(0))),(P=w[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=P.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:P?P[P.length-1].length-P[P.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+w[0].length},this.yytext+=w[0],this.match+=w[0],this.matches=w,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(w[0].length),this.matched+=w[0],B=this.performAction.call(this,this.yy,this,F,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),B)return B;if(this._backtrack){for(var K in G)this[K]=G[K];return!1}return!1},next:function(){if(this.done)return this.EOF;var w,F,B,P;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var G=this._currentRules(),K=0;KF[0].length)){if(F=B,P=K,this.options.backtrack_lexer){if((w=this.test_match(B,G[K]))!==!1)return w;if(this._backtrack){F=!1;continue}return!1}if(!this.options.flex)break}return F?(w=this.test_match(F,G[P]))!==!1&&w:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(w){this.conditionStack.push(w)},popState:function(){return this.conditionStack.length-1>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(w){return(w=this.conditionStack.length-1-Math.abs(w||0))>=0?this.conditionStack[w]:"INITIAL"},pushState:function(w){this.begin(w)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(w,F,B,P){switch(B){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};function A(){this.yy={}}return y.lexer=E,A.prototype=y,y.Parser=A,new A}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(1428).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},7062:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(wt,mt,X,ot){for(X=X||{},ot=wt.length;ot--;X[wt[ot]]=mt);return X},_=[1,4],y=[1,5],E=[1,6],A=[1,7],w=[1,9],F=[1,11,13,15,17,19,20,26,27,28,29],B=[2,5],P=[1,6,11,13,15,17,19,20,26,27,28,29],G=[26,27,28],K=[2,8],J=[1,18],ht=[1,19],tt=[1,20],kt=[1,21],at=[1,22],ut=[1,23],vt=[1,28],Zt=[6,26,27,28,29],Gt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(wt,mt,X,ot,j,yt,Y){var bt=yt.length-1;switch(j){case 4:ot.setShowData(!0);break;case 7:this.$=yt[bt-1];break;case 9:ot.addSection(yt[bt-1],ot.cleanupValue(yt[bt]));break;case 10:this.$=yt[bt].trim(),ot.setDiagramTitle(this.$);break;case 11:this.$=yt[bt].trim(),ot.setAccTitle(this.$);break;case 12:case 13:this.$=yt[bt].trim(),ot.setAccDescription(this.$);break;case 14:ot.addSection(yt[bt].substr(8)),this.$=yt[bt].substr(8);break;case 21:ot.parseDirective("%%{","open_directive");break;case 22:ot.parseDirective(yt[bt],"type_directive");break;case 23:yt[bt]=yt[bt].trim().replace(/'/g,'"'),ot.parseDirective(yt[bt],"arg_directive");break;case 24:ot.parseDirective("}%%","close_directive","pie")}},table:[{3:1,4:2,5:3,6:_,21:8,26:y,27:E,28:A,29:w},{1:[3]},{3:10,4:2,5:3,6:_,21:8,26:y,27:E,28:A,29:w},{3:11,4:2,5:3,6:_,21:8,26:y,27:E,28:A,29:w},u(F,B,{7:12,8:[1,13]}),u(P,[2,18]),u(P,[2,19]),u(P,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},u(G,K,{21:8,9:16,10:17,5:24,1:[2,3],11:J,13:ht,15:tt,17:kt,19:at,20:ut,29:w}),u(F,B,{7:25}),{23:26,24:[1,27],32:vt},u([24,32],[2,22]),u(F,[2,6]),{4:29,26:y,27:E,28:A},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},u(G,[2,13]),u(G,[2,14]),u(G,[2,15]),u(G,K,{21:8,9:16,10:17,5:24,1:[2,4],11:J,13:ht,15:tt,17:kt,19:at,20:ut,29:w}),u(Zt,[2,16]),{25:34,31:[1,35]},u(Zt,[2,24]),u(F,[2,7]),u(G,[2,9]),u(G,[2,10]),u(G,[2,11]),u(G,[2,12]),{23:36,32:vt},{32:[2,23]},u(Zt,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(wt,mt){if(!mt.recoverable){var X=new Error(wt);throw X.hash=mt,X}this.trace(wt)},parse:function(wt){var mt=this,X=[0],ot=[],j=[null],yt=[],Y=this.table,bt="",Ct=0,$t=0,be=0,We=2,xe=1,pe=yt.slice.call(arguments,1),_e=Object.create(this.lexer),Ae={yy:{}};for(var De in this.yy)Object.prototype.hasOwnProperty.call(this.yy,De)&&(Ae.yy[De]=this.yy[De]);_e.setInput(wt,Ae.yy),Ae.yy.lexer=_e,Ae.yy.parser=this,_e.yylloc===void 0&&(_e.yylloc={});var me=_e.yylloc;yt.push(me);var wn=_e.options&&_e.options.ranges;function de(){var Le;return typeof(Le=ot.pop()||_e.lex()||xe)!="number"&&(Le instanceof Array&&(Le=(ot=Le).pop()),Le=mt.symbols_[Le]||Le),Le}typeof Ae.yy.parseError=="function"?this.parseError=Ae.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var Qe,ne,Qt,se,Et,te,st,dt,ft,Mt={};;){if(Qt=X[X.length-1],this.defaultActions[Qt]?se=this.defaultActions[Qt]:(Qe==null&&(Qe=de()),se=Y[Qt]&&Y[Qt][Qe]),se===void 0||!se.length||!se[0]){var fe="";for(te in ft=[],Y[Qt])this.terminals_[te]&&te>We&&ft.push("'"+this.terminals_[te]+"'");fe=_e.showPosition?"Parse error on line "+(Ct+1)+`: `+_e.showPosition()+` Expecting `+ft.join(", ")+", got '"+(this.terminals_[Qe]||Qe)+"'":"Parse error on line "+(Ct+1)+": Unexpected "+(Qe==xe?"end of input":"'"+(this.terminals_[Qe]||Qe)+"'"),this.parseError(fe,{text:_e.match,token:this.terminals_[Qe]||Qe,line:_e.yylineno,loc:me,expected:ft})}if(se[0]instanceof Array&&se.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Qt+", token: "+Qe);switch(se[0]){case 1:X.push(Qe),j.push(_e.yytext),yt.push(_e.yylloc),X.push(se[1]),Qe=null,ne?(Qe=ne,ne=null):($t=_e.yyleng,bt=_e.yytext,Ct=_e.yylineno,me=_e.yylloc,be>0);break;case 2:if(st=this.productions_[se[1]][1],Mt.$=j[j.length-st],Mt._$={first_line:yt[yt.length-(st||1)].first_line,last_line:yt[yt.length-1].last_line,first_column:yt[yt.length-(st||1)].first_column,last_column:yt[yt.length-1].last_column},wn&&(Mt._$.range=[yt[yt.length-(st||1)].range[0],yt[yt.length-1].range[1]]),(Et=this.performAction.apply(Mt,[bt,$t,Ct,Ae.yy,se[1],j,yt].concat(pe)))!==void 0)return Et;st&&(X=X.slice(0,-1*st*2),j=j.slice(0,-1*st),yt=yt.slice(0,-1*st)),X.push(this.productions_[se[1]][0]),j.push(Mt.$),yt.push(Mt._$),dt=Y[X[X.length-2]][X[X.length-1]],X.push(dt);break;case 3:return!0}}return!0}},xt={EOF:1,parseError:function(wt,mt){if(!this.yy.parser)throw new Error(wt);this.yy.parser.parseError(wt,mt)},setInput:function(wt,mt){return this.yy=mt||this.yy||{},this._input=wt,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 wt=this._input[0];return this.yytext+=wt,this.yyleng++,this.offset++,this.match+=wt,this.matched+=wt,wt.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),wt},unput:function(wt){var mt=wt.length,X=wt.split(/(?:\r\n?|\n)/g);this._input=wt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-mt),this.offset-=mt;var ot=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),X.length-1&&(this.yylineno-=X.length-1);var j=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:X?(X.length===ot.length?this.yylloc.first_column:0)+ot[ot.length-X.length].length-X[0].length:this.yylloc.first_column-mt},this.options.ranges&&(this.yylloc.range=[j[0],j[0]+this.yyleng-mt]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(wt){this.unput(this.match.slice(wt))},pastInput:function(){var wt=this.matched.substr(0,this.matched.length-this.match.length);return(wt.length>20?"...":"")+wt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var wt=this.match;return wt.length<20&&(wt+=this._input.substr(0,20-wt.length)),(wt.substr(0,20)+(wt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var wt=this.pastInput(),mt=new Array(wt.length+1).join("-");return wt+this.upcomingInput()+` `+mt+"^"},test_match:function(wt,mt){var X,ot,j;if(this.options.backtrack_lexer&&(j={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&&(j.yylloc.range=this.yylloc.range.slice(0))),(ot=wt[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=ot.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ot?ot[ot.length-1].length-ot[ot.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+wt[0].length},this.yytext+=wt[0],this.match+=wt[0],this.matches=wt,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(wt[0].length),this.matched+=wt[0],X=this.performAction.call(this,this.yy,this,mt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var yt in j)this[yt]=j[yt];return!1}return!1},next:function(){if(this.done)return this.EOF;var wt,mt,X,ot;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var j=this._currentRules(),yt=0;ytmt[0].length)){if(mt=X,ot=yt,this.options.backtrack_lexer){if((wt=this.test_match(X,j[yt]))!==!1)return wt;if(this._backtrack){mt=!1;continue}return!1}if(!this.options.flex)break}return mt?(wt=this.test_match(mt,j[ot]))!==!1&&wt:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(wt){this.conditionStack.push(wt)},popState:function(){return this.conditionStack.length-1>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(wt){return(wt=this.conditionStack.length-1-Math.abs(wt||0))>=0?this.conditionStack[wt]:"INITIAL"},pushState:function(wt){this.begin(wt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(wt,mt,X,ot){switch(X){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:case 6:case 8:case 9:break;case 7:return 26;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:case 20:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};function It(){this.yy={}}return Gt.lexer=xt,It.prototype=Gt,Gt.Parser=It,new It}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(4551).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},3176:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(ne,Qt,se,Et){for(se=se||{},Et=ne.length;Et--;se[ne[Et]]=Qt);return se},_=[1,3],y=[1,5],E=[1,6],A=[1,7],w=[1,8],F=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],B=[1,22],P=[2,13],G=[1,26],K=[1,27],J=[1,28],ht=[1,29],tt=[1,30],kt=[1,31],at=[1,24],ut=[1,32],vt=[1,33],Zt=[1,36],Gt=[71,72],xt=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],It=[1,56],wt=[1,57],mt=[1,58],X=[1,59],ot=[1,60],j=[1,61],yt=[1,62],Y=[62,63],bt=[1,74],Ct=[1,70],$t=[1,71],be=[1,72],We=[1,73],xe=[1,75],pe=[1,79],_e=[1,80],Ae=[1,77],De=[1,78],me=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],wn={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(ne,Qt,se,Et,te,st,dt){var ft=st.length-1;switch(te){case 6:this.$=st[ft].trim(),Et.setAccTitle(this.$);break;case 7:case 8:this.$=st[ft].trim(),Et.setAccDescription(this.$);break;case 9:Et.parseDirective("%%{","open_directive");break;case 10:Et.parseDirective(st[ft],"type_directive");break;case 11:st[ft]=st[ft].trim().replace(/'/g,'"'),Et.parseDirective(st[ft],"arg_directive");break;case 12:Et.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:Et.addRequirement(st[ft-3],st[ft-4]);break;case 20:Et.setNewReqId(st[ft-2]);break;case 21:Et.setNewReqText(st[ft-2]);break;case 22:Et.setNewReqRisk(st[ft-2]);break;case 23:Et.setNewReqVerifyMethod(st[ft-2]);break;case 26:this.$=Et.RequirementType.REQUIREMENT;break;case 27:this.$=Et.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=Et.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=Et.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=Et.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=Et.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=Et.RiskLevel.LOW_RISK;break;case 33:this.$=Et.RiskLevel.MED_RISK;break;case 34:this.$=Et.RiskLevel.HIGH_RISK;break;case 35:this.$=Et.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=Et.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=Et.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=Et.VerifyType.VERIFY_TEST;break;case 39:Et.addElement(st[ft-3]);break;case 40:Et.setNewElementType(st[ft-2]);break;case 41:Et.setNewElementDocRef(st[ft-2]);break;case 44:Et.addRelationship(st[ft-2],st[ft],st[ft-4]);break;case 45:Et.addRelationship(st[ft-2],st[ft-4],st[ft]);break;case 46:this.$=Et.Relationships.CONTAINS;break;case 47:this.$=Et.Relationships.COPIES;break;case 48:this.$=Et.Relationships.DERIVES;break;case 49:this.$=Et.Relationships.SATISFIES;break;case 50:this.$=Et.Relationships.VERIFIES;break;case 51:this.$=Et.Relationships.REFINES;break;case 52:this.$=Et.Relationships.TRACES}},table:[{3:1,4:2,6:_,9:4,14:y,16:E,18:A,19:w},{1:[3]},{3:10,4:2,5:[1,9],6:_,9:4,14:y,16:E,18:A,19:w},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},u(F,[2,8]),{20:[2,9]},{3:16,4:2,6:_,9:4,14:y,16:E,18:A,19:w},{1:[2,2]},{4:21,5:B,7:17,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{11:34,12:[1,35],22:Zt},u([12,22],[2,10]),u(F,[2,6]),u(F,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:B,7:38,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{4:21,5:B,7:39,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{4:21,5:B,7:40,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{4:21,5:B,7:41,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{4:21,5:B,7:42,8:P,9:4,14:y,16:E,18:A,19:w,23:18,24:19,25:20,26:23,32:25,40:G,41:K,42:J,43:ht,44:tt,45:kt,53:at,71:ut,72:vt},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},u(Gt,[2,26]),u(Gt,[2,27]),u(Gt,[2,28]),u(Gt,[2,29]),u(Gt,[2,30]),u(Gt,[2,31]),u(xt,[2,55]),u(xt,[2,56]),u(F,[2,4]),{13:51,21:[1,52]},u(F,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:It,65:wt,66:mt,67:X,68:ot,69:j,70:yt},{61:63,64:It,65:wt,66:mt,67:X,68:ot,69:j,70:yt},{11:64,22:Zt},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},u(Y,[2,46]),u(Y,[2,47]),u(Y,[2,48]),u(Y,[2,49]),u(Y,[2,50]),u(Y,[2,51]),u(Y,[2,52]),{63:[1,68]},u(F,[2,5]),{5:bt,29:69,30:Ct,33:$t,35:be,37:We,39:xe},{5:pe,39:_e,55:76,56:Ae,58:De},{32:81,71:ut,72:vt},{32:82,71:ut,72:vt},u(me,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:bt,29:87,30:Ct,33:$t,35:be,37:We,39:xe},u(me,[2,25]),u(me,[2,39]),{31:[1,88]},{31:[1,89]},{5:pe,39:_e,55:90,56:Ae,58:De},u(me,[2,43]),u(me,[2,44]),u(me,[2,45]),{32:91,71:ut,72:vt},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},u(me,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},u(me,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:bt,29:116,30:Ct,33:$t,35:be,37:We,39:xe},{5:bt,29:117,30:Ct,33:$t,35:be,37:We,39:xe},{5:bt,29:118,30:Ct,33:$t,35:be,37:We,39:xe},{5:bt,29:119,30:Ct,33:$t,35:be,37:We,39:xe},{5:pe,39:_e,55:120,56:Ae,58:De},{5:pe,39:_e,55:121,56:Ae,58:De},u(me,[2,20]),u(me,[2,21]),u(me,[2,22]),u(me,[2,23]),u(me,[2,40]),u(me,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(ne,Qt){if(!Qt.recoverable){var se=new Error(ne);throw se.hash=Qt,se}this.trace(ne)},parse:function(ne){var Qt=this,se=[0],Et=[],te=[null],st=[],dt=this.table,ft="",Mt=0,fe=0,Le=0,en=2,qe=1,sn=st.slice.call(arguments,1),Fe=Object.create(this.lexer),Te={yy:{}};for(var Oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Oe)&&(Te.yy[Oe]=this.yy[Oe]);Fe.setInput(ne,Te.yy),Te.yy.lexer=Fe,Te.yy.parser=this,Fe.yylloc===void 0&&(Fe.yylloc={});var Be=Fe.yylloc;st.push(Be);var ge=Fe.options&&Fe.options.ranges;function re(){var Ee;return typeof(Ee=Et.pop()||Fe.lex()||qe)!="number"&&(Ee instanceof Array&&(Ee=(Et=Ee).pop()),Ee=Qt.symbols_[Ee]||Ee),Ee}typeof Te.yy.parseError=="function"?this.parseError=Te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var An,Ie,ln,Ye,fn,Jn,Dn,Tn,Me,Ke={};;){if(ln=se[se.length-1],this.defaultActions[ln]?Ye=this.defaultActions[ln]:(An==null&&(An=re()),Ye=dt[ln]&&dt[ln][An]),Ye===void 0||!Ye.length||!Ye[0]){var Xe="";for(Jn in Me=[],dt[ln])this.terminals_[Jn]&&Jn>en&&Me.push("'"+this.terminals_[Jn]+"'");Xe=Fe.showPosition?"Parse error on line "+(Mt+1)+`: `+Fe.showPosition()+` Expecting `+Me.join(", ")+", got '"+(this.terminals_[An]||An)+"'":"Parse error on line "+(Mt+1)+": Unexpected "+(An==qe?"end of input":"'"+(this.terminals_[An]||An)+"'"),this.parseError(Xe,{text:Fe.match,token:this.terminals_[An]||An,line:Fe.yylineno,loc:Be,expected:Me})}if(Ye[0]instanceof Array&&Ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ln+", token: "+An);switch(Ye[0]){case 1:se.push(An),te.push(Fe.yytext),st.push(Fe.yylloc),se.push(Ye[1]),An=null,Ie?(An=Ie,Ie=null):(fe=Fe.yyleng,ft=Fe.yytext,Mt=Fe.yylineno,Be=Fe.yylloc,Le>0);break;case 2:if(Dn=this.productions_[Ye[1]][1],Ke.$=te[te.length-Dn],Ke._$={first_line:st[st.length-(Dn||1)].first_line,last_line:st[st.length-1].last_line,first_column:st[st.length-(Dn||1)].first_column,last_column:st[st.length-1].last_column},ge&&(Ke._$.range=[st[st.length-(Dn||1)].range[0],st[st.length-1].range[1]]),(fn=this.performAction.apply(Ke,[ft,fe,Mt,Te.yy,Ye[1],te,st].concat(sn)))!==void 0)return fn;Dn&&(se=se.slice(0,-1*Dn*2),te=te.slice(0,-1*Dn),st=st.slice(0,-1*Dn)),se.push(this.productions_[Ye[1]][0]),te.push(Ke.$),st.push(Ke._$),Tn=dt[se[se.length-2]][se[se.length-1]],se.push(Tn);break;case 3:return!0}}return!0}},de={EOF:1,parseError:function(ne,Qt){if(!this.yy.parser)throw new Error(ne);this.yy.parser.parseError(ne,Qt)},setInput:function(ne,Qt){return this.yy=Qt||this.yy||{},this._input=ne,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 ne=this._input[0];return this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne,ne.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var Qt=ne.length,se=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Qt),this.offset-=Qt;var Et=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),se.length-1&&(this.yylineno-=se.length-1);var te=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:se?(se.length===Et.length?this.yylloc.first_column:0)+Et[Et.length-se.length].length-se[0].length:this.yylloc.first_column-Qt},this.options.ranges&&(this.yylloc.range=[te[0],te[0]+this.yyleng-Qt]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),Qt=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+` `+Qt+"^"},test_match:function(ne,Qt){var se,Et,te;if(this.options.backtrack_lexer&&(te={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&&(te.yylloc.range=this.yylloc.range.slice(0))),(Et=ne[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=Et.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Et?Et[Et.length-1].length-Et[Et.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ne[0].length},this.yytext+=ne[0],this.match+=ne[0],this.matches=ne,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(ne[0].length),this.matched+=ne[0],se=this.performAction.call(this,this.yy,this,Qt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),se)return se;if(this._backtrack){for(var st in te)this[st]=te[st];return!1}return!1},next:function(){if(this.done)return this.EOF;var ne,Qt,se,Et;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var te=this._currentRules(),st=0;stQt[0].length)){if(Qt=se,Et=st,this.options.backtrack_lexer){if((ne=this.test_match(se,te[st]))!==!1)return ne;if(this._backtrack){Qt=!1;continue}return!1}if(!this.options.flex)break}return Qt?(ne=this.test_match(Qt,te[Et]))!==!1&&ne:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(ne){this.conditionStack.push(ne)},popState:function(){return this.conditionStack.length-1>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(ne){return(ne=this.conditionStack.length-1-Math.abs(ne||0))>=0?this.conditionStack[ne]:"INITIAL"},pushState:function(ne){this.begin(ne)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ne,Qt,se,Et){switch(se){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 53:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:case 15:case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 54:return"qString";case 55:return Qt.yytext=Qt.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,55],inclusive:!0}}};function Qe(){this.yy={}}return wn.lexer=de,Qe.prototype=wn,wn.Parser=Qe,new Qe}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(8800).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},6876:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(ne,Qt,se,Et){for(se=se||{},Et=ne.length;Et--;se[ne[Et]]=Qt);return se},_=[1,2],y=[1,3],E=[1,5],A=[1,7],w=[2,5],F=[1,15],B=[1,17],P=[1,18],G=[1,19],K=[1,21],J=[1,22],ht=[1,23],tt=[1,29],kt=[1,30],at=[1,31],ut=[1,32],vt=[1,33],Zt=[1,34],Gt=[1,35],xt=[1,36],It=[1,37],wt=[1,38],mt=[1,39],X=[1,40],ot=[1,43],j=[1,44],yt=[1,45],Y=[1,46],bt=[1,47],Ct=[1,48],$t=[1,51],be=[1,4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,51,52,53,58,59,60,61,69,79],We=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,53,58,59,60,61,69,79],xe=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,52,53,58,59,60,61,69,79],pe=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,51,53,58,59,60,61,69,79],_e=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,53,58,59,60,61,69,79],Ae=[67,68,69],De=[1,121],me=[1,4,5,7,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,51,52,53,58,59,60,61,69,79],wn={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,openDirective:11,typeDirective:12,closeDirective:13,":":14,argDirective:15,participant:16,actor:17,AS:18,restOfLine:19,participant_actor:20,signal:21,autonumber:22,NUM:23,off:24,activate:25,deactivate:26,note_statement:27,links_statement:28,link_statement:29,properties_statement:30,details_statement:31,title:32,legacy_title:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,loop:39,end:40,rect:41,opt:42,alt:43,else_sections:44,par:45,par_sections:46,critical:47,option_sections:48,break:49,option:50,and:51,else:52,note:53,placement:54,text2:55,over:56,actor_pair:57,links:58,link:59,properties:60,details:61,spaceList:62,",":63,left_of:64,right_of:65,signaltype:66,"+":67,"-":68,ACTOR:69,SOLID_OPEN_ARROW:70,DOTTED_OPEN_ARROW:71,SOLID_ARROW:72,DOTTED_ARROW:73,SOLID_CROSS:74,DOTTED_CROSS:75,SOLID_POINT:76,DOTTED_POINT:77,TXT:78,open_directive:79,type_directive:80,arg_directive:81,close_directive:82,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",14:":",16:"participant",18:"AS",19:"restOfLine",20:"participant_actor",22:"autonumber",23:"NUM",24:"off",25:"activate",26:"deactivate",32:"title",33:"legacy_title",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",39:"loop",40:"end",41:"rect",42:"opt",43:"alt",45:"par",47:"critical",49:"break",50:"option",51:"and",52:"else",53:"note",56:"over",58:"links",59:"link",60:"properties",61:"details",63:",",64:"left_of",65:"right_of",67:"+",68:"-",69:"ACTOR",70:"SOLID_OPEN_ARROW",71:"DOTTED_OPEN_ARROW",72:"SOLID_ARROW",73:"DOTTED_ARROW",74:"SOLID_CROSS",75:"DOTTED_CROSS",76:"SOLID_POINT",77:"DOTTED_POINT",78:"TXT",79:"open_directive",80:"type_directive",81:"arg_directive",82:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[6,4],[6,6],[10,5],[10,3],[10,5],[10,3],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[48,1],[48,4],[46,1],[46,4],[44,1],[44,4],[27,4],[27,4],[28,3],[29,3],[30,3],[31,3],[62,2],[62,1],[57,3],[57,1],[54,1],[54,1],[21,5],[21,5],[21,4],[17,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[55,1],[11,1],[12,1],[15,1],[13,1]],performAction:function(ne,Qt,se,Et,te,st,dt){var ft=st.length-1;switch(te){case 4:return Et.apply(st[ft]),st[ft];case 5:case 9:this.$=[];break;case 6:st[ft-1].push(st[ft]),this.$=st[ft-1];break;case 7:case 8:case 56:this.$=st[ft];break;case 12:st[ft-3].type="addParticipant",st[ft-3].description=Et.parseMessage(st[ft-1]),this.$=st[ft-3];break;case 13:st[ft-1].type="addParticipant",this.$=st[ft-1];break;case 14:st[ft-3].type="addActor",st[ft-3].description=Et.parseMessage(st[ft-1]),this.$=st[ft-3];break;case 15:st[ft-1].type="addActor",this.$=st[ft-1];break;case 17:this.$={type:"sequenceIndex",sequenceIndex:Number(st[ft-2]),sequenceIndexStep:Number(st[ft-1]),sequenceVisible:!0,signalType:Et.LINETYPE.AUTONUMBER};break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(st[ft-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:Et.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:Et.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:Et.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"activeStart",signalType:Et.LINETYPE.ACTIVE_START,actor:st[ft-1]};break;case 22:this.$={type:"activeEnd",signalType:Et.LINETYPE.ACTIVE_END,actor:st[ft-1]};break;case 28:Et.setDiagramTitle(st[ft].substring(6)),this.$=st[ft].substring(6);break;case 29:Et.setDiagramTitle(st[ft].substring(7)),this.$=st[ft].substring(7);break;case 30:this.$=st[ft].trim(),Et.setAccTitle(this.$);break;case 31:case 32:this.$=st[ft].trim(),Et.setAccDescription(this.$);break;case 33:st[ft-1].unshift({type:"loopStart",loopText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.LOOP_START}),st[ft-1].push({type:"loopEnd",loopText:st[ft-2],signalType:Et.LINETYPE.LOOP_END}),this.$=st[ft-1];break;case 34:st[ft-1].unshift({type:"rectStart",color:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.RECT_START}),st[ft-1].push({type:"rectEnd",color:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.RECT_END}),this.$=st[ft-1];break;case 35:st[ft-1].unshift({type:"optStart",optText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.OPT_START}),st[ft-1].push({type:"optEnd",optText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.OPT_END}),this.$=st[ft-1];break;case 36:st[ft-1].unshift({type:"altStart",altText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.ALT_START}),st[ft-1].push({type:"altEnd",signalType:Et.LINETYPE.ALT_END}),this.$=st[ft-1];break;case 37:st[ft-1].unshift({type:"parStart",parText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.PAR_START}),st[ft-1].push({type:"parEnd",signalType:Et.LINETYPE.PAR_END}),this.$=st[ft-1];break;case 38:st[ft-1].unshift({type:"criticalStart",criticalText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.CRITICAL_START}),st[ft-1].push({type:"criticalEnd",signalType:Et.LINETYPE.CRITICAL_END}),this.$=st[ft-1];break;case 39:st[ft-1].unshift({type:"breakStart",breakText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.BREAK_START}),st[ft-1].push({type:"breakEnd",optText:Et.parseMessage(st[ft-2]),signalType:Et.LINETYPE.BREAK_END}),this.$=st[ft-1];break;case 42:this.$=st[ft-3].concat([{type:"option",optionText:Et.parseMessage(st[ft-1]),signalType:Et.LINETYPE.CRITICAL_OPTION},st[ft]]);break;case 44:this.$=st[ft-3].concat([{type:"and",parText:Et.parseMessage(st[ft-1]),signalType:Et.LINETYPE.PAR_AND},st[ft]]);break;case 46:this.$=st[ft-3].concat([{type:"else",altText:Et.parseMessage(st[ft-1]),signalType:Et.LINETYPE.ALT_ELSE},st[ft]]);break;case 47:this.$=[st[ft-1],{type:"addNote",placement:st[ft-2],actor:st[ft-1].actor,text:st[ft]}];break;case 48:st[ft-2]=[].concat(st[ft-1],st[ft-1]).slice(0,2),st[ft-2][0]=st[ft-2][0].actor,st[ft-2][1]=st[ft-2][1].actor,this.$=[st[ft-1],{type:"addNote",placement:Et.PLACEMENT.OVER,actor:st[ft-2].slice(0,2),text:st[ft]}];break;case 49:this.$=[st[ft-1],{type:"addLinks",actor:st[ft-1].actor,text:st[ft]}];break;case 50:this.$=[st[ft-1],{type:"addALink",actor:st[ft-1].actor,text:st[ft]}];break;case 51:this.$=[st[ft-1],{type:"addProperties",actor:st[ft-1].actor,text:st[ft]}];break;case 52:this.$=[st[ft-1],{type:"addDetails",actor:st[ft-1].actor,text:st[ft]}];break;case 55:this.$=[st[ft-2],st[ft]];break;case 57:this.$=Et.PLACEMENT.LEFTOF;break;case 58:this.$=Et.PLACEMENT.RIGHTOF;break;case 59:this.$=[st[ft-4],st[ft-1],{type:"addMessage",from:st[ft-4].actor,to:st[ft-1].actor,signalType:st[ft-3],msg:st[ft]},{type:"activeStart",signalType:Et.LINETYPE.ACTIVE_START,actor:st[ft-1]}];break;case 60:this.$=[st[ft-4],st[ft-1],{type:"addMessage",from:st[ft-4].actor,to:st[ft-1].actor,signalType:st[ft-3],msg:st[ft]},{type:"activeEnd",signalType:Et.LINETYPE.ACTIVE_END,actor:st[ft-4]}];break;case 61:this.$=[st[ft-3],st[ft-1],{type:"addMessage",from:st[ft-3].actor,to:st[ft-1].actor,signalType:st[ft-2],msg:st[ft]}];break;case 62:this.$={type:"addParticipant",actor:st[ft]};break;case 63:this.$=Et.LINETYPE.SOLID_OPEN;break;case 64:this.$=Et.LINETYPE.DOTTED_OPEN;break;case 65:this.$=Et.LINETYPE.SOLID;break;case 66:this.$=Et.LINETYPE.DOTTED;break;case 67:this.$=Et.LINETYPE.SOLID_CROSS;break;case 68:this.$=Et.LINETYPE.DOTTED_CROSS;break;case 69:this.$=Et.LINETYPE.SOLID_POINT;break;case 70:this.$=Et.LINETYPE.DOTTED_POINT;break;case 71:this.$=Et.parseMessage(st[ft].trim().substring(1));break;case 72:Et.parseDirective("%%{","open_directive");break;case 73:Et.parseDirective(st[ft],"type_directive");break;case 74:st[ft]=st[ft].trim().replace(/'/g,'"'),Et.parseDirective(st[ft],"arg_directive");break;case 75:Et.parseDirective("}%%","close_directive","sequence")}},table:[{3:1,4:_,5:y,6:4,7:E,11:6,79:A},{1:[3]},{3:8,4:_,5:y,6:4,7:E,11:6,79:A},{3:9,4:_,5:y,6:4,7:E,11:6,79:A},{3:10,4:_,5:y,6:4,7:E,11:6,79:A},u([1,4,5,16,20,22,25,26,32,33,34,36,38,39,41,42,43,45,47,49,53,58,59,60,61,69,79],w,{8:11}),{12:12,80:[1,13]},{80:[2,72]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{13:49,14:[1,50],82:$t},u([14,82],[2,73]),u(be,[2,6]),{6:41,10:52,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},u(be,[2,8]),u(be,[2,9]),{17:53,69:Ct},{17:54,69:Ct},{5:[1,55]},{5:[1,58],23:[1,56],24:[1,57]},{17:59,69:Ct},{17:60,69:Ct},{5:[1,61]},{5:[1,62]},{5:[1,63]},{5:[1,64]},{5:[1,65]},u(be,[2,28]),u(be,[2,29]),{35:[1,66]},{37:[1,67]},u(be,[2,32]),{19:[1,68]},{19:[1,69]},{19:[1,70]},{19:[1,71]},{19:[1,72]},{19:[1,73]},{19:[1,74]},u(be,[2,40]),{66:75,70:[1,76],71:[1,77],72:[1,78],73:[1,79],74:[1,80],75:[1,81],76:[1,82],77:[1,83]},{54:84,56:[1,85],64:[1,86],65:[1,87]},{17:88,69:Ct},{17:89,69:Ct},{17:90,69:Ct},{17:91,69:Ct},u([5,18,63,70,71,72,73,74,75,76,77,78],[2,62]),{5:[1,92]},{15:93,81:[1,94]},{5:[2,75]},u(be,[2,7]),{5:[1,96],18:[1,95]},{5:[1,98],18:[1,97]},u(be,[2,16]),{5:[1,100],23:[1,99]},{5:[1,101]},u(be,[2,20]),{5:[1,102]},{5:[1,103]},u(be,[2,23]),u(be,[2,24]),u(be,[2,25]),u(be,[2,26]),u(be,[2,27]),u(be,[2,30]),u(be,[2,31]),u(We,w,{8:104}),u(We,w,{8:105}),u(We,w,{8:106}),u(xe,w,{44:107,8:108}),u(pe,w,{46:109,8:110}),u(_e,w,{48:111,8:112}),u(We,w,{8:113}),{17:116,67:[1,114],68:[1,115],69:Ct},u(Ae,[2,63]),u(Ae,[2,64]),u(Ae,[2,65]),u(Ae,[2,66]),u(Ae,[2,67]),u(Ae,[2,68]),u(Ae,[2,69]),u(Ae,[2,70]),{17:117,69:Ct},{17:119,57:118,69:Ct},{69:[2,57]},{69:[2,58]},{55:120,78:De},{55:122,78:De},{55:123,78:De},{55:124,78:De},u(me,[2,10]),{13:125,82:$t},{82:[2,74]},{19:[1,126]},u(be,[2,13]),{19:[1,127]},u(be,[2,15]),{5:[1,128]},u(be,[2,18]),u(be,[2,19]),u(be,[2,21]),u(be,[2,22]),{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[1,129],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[1,130],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[1,131],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{40:[1,132]},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[2,45],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,52:[1,133],53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{40:[1,134]},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[2,43],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,51:[1,135],53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{40:[1,136]},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[2,41],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,50:[1,137],53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{4:F,5:B,6:41,9:14,10:16,11:6,16:P,17:42,20:G,21:20,22:K,25:J,26:ht,27:24,28:25,29:26,30:27,31:28,32:tt,33:kt,34:at,36:ut,38:vt,39:Zt,40:[1,138],41:Gt,42:xt,43:It,45:wt,47:mt,49:X,53:ot,58:j,59:yt,60:Y,61:bt,69:Ct,79:A},{17:139,69:Ct},{17:140,69:Ct},{55:141,78:De},{55:142,78:De},{55:143,78:De},{63:[1,144],78:[2,56]},{5:[2,49]},{5:[2,71]},{5:[2,50]},{5:[2,51]},{5:[2,52]},{5:[1,145]},{5:[1,146]},{5:[1,147]},u(be,[2,17]),u(be,[2,33]),u(be,[2,34]),u(be,[2,35]),u(be,[2,36]),{19:[1,148]},u(be,[2,37]),{19:[1,149]},u(be,[2,38]),{19:[1,150]},u(be,[2,39]),{55:151,78:De},{55:152,78:De},{5:[2,61]},{5:[2,47]},{5:[2,48]},{17:153,69:Ct},u(me,[2,11]),u(be,[2,12]),u(be,[2,14]),u(xe,w,{8:108,44:154}),u(pe,w,{8:110,46:155}),u(_e,w,{8:112,48:156}),{5:[2,59]},{5:[2,60]},{78:[2,55]},{40:[2,46]},{40:[2,44]},{40:[2,42]}],defaultActions:{7:[2,72],8:[2,1],9:[2,2],10:[2,3],51:[2,75],86:[2,57],87:[2,58],94:[2,74],120:[2,49],121:[2,71],122:[2,50],123:[2,51],124:[2,52],141:[2,61],142:[2,47],143:[2,48],151:[2,59],152:[2,60],153:[2,55],154:[2,46],155:[2,44],156:[2,42]},parseError:function(ne,Qt){if(!Qt.recoverable){var se=new Error(ne);throw se.hash=Qt,se}this.trace(ne)},parse:function(ne){var Qt=this,se=[0],Et=[],te=[null],st=[],dt=this.table,ft="",Mt=0,fe=0,Le=0,en=2,qe=1,sn=st.slice.call(arguments,1),Fe=Object.create(this.lexer),Te={yy:{}};for(var Oe in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Oe)&&(Te.yy[Oe]=this.yy[Oe]);Fe.setInput(ne,Te.yy),Te.yy.lexer=Fe,Te.yy.parser=this,Fe.yylloc===void 0&&(Fe.yylloc={});var Be=Fe.yylloc;st.push(Be);var ge=Fe.options&&Fe.options.ranges;function re(){var Ee;return typeof(Ee=Et.pop()||Fe.lex()||qe)!="number"&&(Ee instanceof Array&&(Ee=(Et=Ee).pop()),Ee=Qt.symbols_[Ee]||Ee),Ee}typeof Te.yy.parseError=="function"?this.parseError=Te.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var An,Ie,ln,Ye,fn,Jn,Dn,Tn,Me,Ke={};;){if(ln=se[se.length-1],this.defaultActions[ln]?Ye=this.defaultActions[ln]:(An==null&&(An=re()),Ye=dt[ln]&&dt[ln][An]),Ye===void 0||!Ye.length||!Ye[0]){var Xe="";for(Jn in Me=[],dt[ln])this.terminals_[Jn]&&Jn>en&&Me.push("'"+this.terminals_[Jn]+"'");Xe=Fe.showPosition?"Parse error on line "+(Mt+1)+`: `+Fe.showPosition()+` Expecting `+Me.join(", ")+", got '"+(this.terminals_[An]||An)+"'":"Parse error on line "+(Mt+1)+": Unexpected "+(An==qe?"end of input":"'"+(this.terminals_[An]||An)+"'"),this.parseError(Xe,{text:Fe.match,token:this.terminals_[An]||An,line:Fe.yylineno,loc:Be,expected:Me})}if(Ye[0]instanceof Array&&Ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ln+", token: "+An);switch(Ye[0]){case 1:se.push(An),te.push(Fe.yytext),st.push(Fe.yylloc),se.push(Ye[1]),An=null,Ie?(An=Ie,Ie=null):(fe=Fe.yyleng,ft=Fe.yytext,Mt=Fe.yylineno,Be=Fe.yylloc,Le>0);break;case 2:if(Dn=this.productions_[Ye[1]][1],Ke.$=te[te.length-Dn],Ke._$={first_line:st[st.length-(Dn||1)].first_line,last_line:st[st.length-1].last_line,first_column:st[st.length-(Dn||1)].first_column,last_column:st[st.length-1].last_column},ge&&(Ke._$.range=[st[st.length-(Dn||1)].range[0],st[st.length-1].range[1]]),(fn=this.performAction.apply(Ke,[ft,fe,Mt,Te.yy,Ye[1],te,st].concat(sn)))!==void 0)return fn;Dn&&(se=se.slice(0,-1*Dn*2),te=te.slice(0,-1*Dn),st=st.slice(0,-1*Dn)),se.push(this.productions_[Ye[1]][0]),te.push(Ke.$),st.push(Ke._$),Tn=dt[se[se.length-2]][se[se.length-1]],se.push(Tn);break;case 3:return!0}}return!0}},de={EOF:1,parseError:function(ne,Qt){if(!this.yy.parser)throw new Error(ne);this.yy.parser.parseError(ne,Qt)},setInput:function(ne,Qt){return this.yy=Qt||this.yy||{},this._input=ne,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 ne=this._input[0];return this.yytext+=ne,this.yyleng++,this.offset++,this.match+=ne,this.matched+=ne,ne.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ne},unput:function(ne){var Qt=ne.length,se=ne.split(/(?:\r\n?|\n)/g);this._input=ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Qt),this.offset-=Qt;var Et=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),se.length-1&&(this.yylineno-=se.length-1);var te=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:se?(se.length===Et.length?this.yylloc.first_column:0)+Et[Et.length-se.length].length-se[0].length:this.yylloc.first_column-Qt},this.options.ranges&&(this.yylloc.range=[te[0],te[0]+this.yyleng-Qt]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(ne){this.unput(this.match.slice(ne))},pastInput:function(){var ne=this.matched.substr(0,this.matched.length-this.match.length);return(ne.length>20?"...":"")+ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ne=this.match;return ne.length<20&&(ne+=this._input.substr(0,20-ne.length)),(ne.substr(0,20)+(ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ne=this.pastInput(),Qt=new Array(ne.length+1).join("-");return ne+this.upcomingInput()+` `+Qt+"^"},test_match:function(ne,Qt){var se,Et,te;if(this.options.backtrack_lexer&&(te={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&&(te.yylloc.range=this.yylloc.range.slice(0))),(Et=ne[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=Et.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Et?Et[Et.length-1].length-Et[Et.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ne[0].length},this.yytext+=ne[0],this.match+=ne[0],this.matches=ne,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(ne[0].length),this.matched+=ne[0],se=this.performAction.call(this,this.yy,this,Qt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),se)return se;if(this._backtrack){for(var st in te)this[st]=te[st];return!1}return!1},next:function(){if(this.done)return this.EOF;var ne,Qt,se,Et;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var te=this._currentRules(),st=0;stQt[0].length)){if(Qt=se,Et=st,this.options.backtrack_lexer){if((ne=this.test_match(se,te[st]))!==!1)return ne;if(this._backtrack){Qt=!1;continue}return!1}if(!this.options.flex)break}return Qt?(ne=this.test_match(Qt,te[Et]))!==!1&&ne:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(ne){this.conditionStack.push(ne)},popState:function(){return this.conditionStack.length-1>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(ne){return(ne=this.conditionStack.length-1-Math.abs(ne||0))>=0?this.conditionStack[ne]:"INITIAL"},pushState:function(ne){this.begin(ne)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ne,Qt,se,Et){switch(se){case 0:return this.begin("open_directive"),79;case 1:return this.begin("type_directive"),80;case 2:return this.popState(),this.begin("arg_directive"),14;case 3:return this.popState(),this.popState(),82;case 4:return 81;case 5:case 52:case 65:return 5;case 6:case 7:case 8:case 9:case 10:break;case 11:return 23;case 12:return this.begin("ID"),16;case 13:return this.begin("ID"),20;case 14:return Qt.yytext=Qt.yytext.trim(),this.begin("ALIAS"),69;case 15:return this.popState(),this.popState(),this.begin("LINE"),18;case 16:return this.popState(),this.popState(),5;case 17:return this.begin("LINE"),39;case 18:return this.begin("LINE"),41;case 19:return this.begin("LINE"),42;case 20:return this.begin("LINE"),43;case 21:return this.begin("LINE"),52;case 22:return this.begin("LINE"),45;case 23:return this.begin("LINE"),51;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),50;case 26:return this.begin("LINE"),49;case 27:return this.popState(),19;case 28:return 40;case 29:return 64;case 30:return 65;case 31:return 58;case 32:return 59;case 33:return 60;case 34:return 61;case 35:return 56;case 36:return 53;case 37:return this.begin("ID"),25;case 38:return this.begin("ID"),26;case 39:return 32;case 40:return 33;case 41:return this.begin("acc_title"),34;case 42:return this.popState(),"acc_title_value";case 43:return this.begin("acc_descr"),36;case 44:return this.popState(),"acc_descr_value";case 45:this.begin("acc_descr_multiline");break;case 46:this.popState();break;case 47:return"acc_descr_multiline_value";case 48:return 7;case 49:return 22;case 50:return 24;case 51:return 63;case 53:return Qt.yytext=Qt.yytext.trim(),69;case 54:return 72;case 55:return 73;case 56:return 70;case 57:return 71;case 58:return 74;case 59:return 75;case 60:return 76;case 61:return 77;case 62:return 78;case 63:return 67;case 64:return 68;case 66:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:[^\->:\n,;]+?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[46,47],inclusive:!1},acc_descr:{rules:[44],inclusive:!1},acc_title:{rules:[42],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,14],inclusive:!1},ALIAS:{rules:[7,8,15,16],inclusive:!1},LINE:{rules:[7,8,27],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,17,18,19,20,21,22,23,24,25,26,28,29,30,31,32,33,34,35,36,37,38,39,40,41,43,45,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66],inclusive:!0}}};function Qe(){this.yy={}}return wn.lexer=de,Qe.prototype=wn,wn.Parser=Qe,new Qe}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(1993).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},3584:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(xe,pe,_e,Ae){for(_e=_e||{},Ae=xe.length;Ae--;_e[xe[Ae]]=pe);return _e},_=[1,2],y=[1,3],E=[1,5],A=[1,7],w=[2,5],F=[1,15],B=[1,17],P=[1,19],G=[1,20],K=[1,21],J=[1,22],ht=[1,33],tt=[1,23],kt=[1,24],at=[1,25],ut=[1,26],vt=[1,27],Zt=[1,30],Gt=[1,31],xt=[1,32],It=[1,35],wt=[1,36],mt=[1,37],X=[1,38],ot=[1,34],j=[1,41],yt=[1,4,5,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],Y=[1,4,5,12,13,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],bt=[1,4,5,7,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],Ct=[4,5,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],$t={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,idStatement:11,DESCR:12,"-->":13,HIDE_EMPTY:14,scale:15,WIDTH:16,COMPOSIT_STATE:17,STRUCT_START:18,STRUCT_STOP:19,STATE_DESCR:20,AS:21,ID:22,FORK:23,JOIN:24,CHOICE:25,CONCURRENT:26,note:27,notePosition:28,NOTE_TEXT:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,openDirective:36,typeDirective:37,closeDirective:38,":":39,argDirective:40,direction_tb:41,direction_bt:42,direction_rl:43,direction_lr:44,eol:45,";":46,EDGE_STATE:47,left_of:48,right_of:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",12:"DESCR",13:"-->",14:"HIDE_EMPTY",15:"scale",16:"WIDTH",17:"COMPOSIT_STATE",18:"STRUCT_START",19:"STRUCT_STOP",20:"STATE_DESCR",21:"AS",22:"ID",23:"FORK",24:"JOIN",25:"CHOICE",26:"CONCURRENT",27:"note",29:"NOTE_TEXT",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",39:":",41:"direction_tb",42:"direction_bt",43:"direction_rl",44:"direction_lr",46:";",47:"EDGE_STATE",48:"left_of",49:"right_of",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[6,3],[6,5],[30,1],[30,1],[30,1],[30,1],[45,1],[45,1],[11,1],[11,1],[28,1],[28,1],[36,1],[37,1],[40,1],[38,1]],performAction:function(xe,pe,_e,Ae,De,me,wn){var de=me.length-1;switch(De){case 4:return Ae.setRootDoc(me[de]),me[de];case 5:this.$=[];break;case 6:me[de]!="nl"&&(me[de-1].push(me[de]),this.$=me[de-1]);break;case 7:case 8:case 39:case 40:this.$=me[de];break;case 9:this.$="nl";break;case 10:this.$={stmt:"state",id:me[de],type:"default",description:""};break;case 11:this.$={stmt:"state",id:me[de-1],type:"default",description:Ae.trimColon(me[de])};break;case 12:this.$={stmt:"relation",state1:{stmt:"state",id:me[de-2],type:"default",description:""},state2:{stmt:"state",id:me[de],type:"default",description:""}};break;case 13:this.$={stmt:"relation",state1:{stmt:"state",id:me[de-3],type:"default",description:""},state2:{stmt:"state",id:me[de-1],type:"default",description:""},description:me[de].substr(1).trim()};break;case 17:this.$={stmt:"state",id:me[de-3],type:"default",description:"",doc:me[de-1]};break;case 18:var Qe=me[de],ne=me[de-2].trim();if(me[de].match(":")){var Qt=me[de].split(":");Qe=Qt[0],ne=[ne,Qt[1]]}this.$={stmt:"state",id:Qe,type:"default",description:ne};break;case 19:this.$={stmt:"state",id:me[de-3],type:"default",description:me[de-5],doc:me[de-1]};break;case 20:this.$={stmt:"state",id:me[de],type:"fork"};break;case 21:this.$={stmt:"state",id:me[de],type:"join"};break;case 22:this.$={stmt:"state",id:me[de],type:"choice"};break;case 23:this.$={stmt:"state",id:Ae.getDividerId(),type:"divider"};break;case 24:this.$={stmt:"state",id:me[de-1].trim(),note:{position:me[de-2].trim(),text:me[de].trim()}};break;case 28:this.$=me[de].trim(),Ae.setAccTitle(this.$);break;case 29:case 30:this.$=me[de].trim(),Ae.setAccDescription(this.$);break;case 33:Ae.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 34:Ae.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 35:Ae.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 36:Ae.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 43:Ae.parseDirective("%%{","open_directive");break;case 44:Ae.parseDirective(me[de],"type_directive");break;case 45:me[de]=me[de].trim().replace(/'/g,'"'),Ae.parseDirective(me[de],"arg_directive");break;case 46:Ae.parseDirective("}%%","close_directive","state")}},table:[{3:1,4:_,5:y,6:4,7:E,36:6,50:A},{1:[3]},{3:8,4:_,5:y,6:4,7:E,36:6,50:A},{3:9,4:_,5:y,6:4,7:E,36:6,50:A},{3:10,4:_,5:y,6:4,7:E,36:6,50:A},u([1,4,5,14,15,17,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],w,{8:11}),{37:12,51:[1,13]},{51:[2,43]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:F,5:B,6:28,9:14,10:16,11:18,14:P,15:G,17:K,20:J,22:ht,23:tt,24:kt,25:at,26:ut,27:vt,30:29,31:Zt,33:Gt,35:xt,36:6,41:It,42:wt,43:mt,44:X,47:ot,50:A},{38:39,39:[1,40],53:j},u([39,53],[2,44]),u(yt,[2,6]),{6:28,10:42,11:18,14:P,15:G,17:K,20:J,22:ht,23:tt,24:kt,25:at,26:ut,27:vt,30:29,31:Zt,33:Gt,35:xt,36:6,41:It,42:wt,43:mt,44:X,47:ot,50:A},u(yt,[2,8]),u(yt,[2,9]),u(yt,[2,10],{12:[1,43],13:[1,44]}),u(yt,[2,14]),{16:[1,45]},u(yt,[2,16],{18:[1,46]}),{21:[1,47]},u(yt,[2,20]),u(yt,[2,21]),u(yt,[2,22]),u(yt,[2,23]),{28:48,29:[1,49],48:[1,50],49:[1,51]},u(yt,[2,26]),u(yt,[2,27]),{32:[1,52]},{34:[1,53]},u(yt,[2,30]),u(Y,[2,39]),u(Y,[2,40]),u(yt,[2,33]),u(yt,[2,34]),u(yt,[2,35]),u(yt,[2,36]),u(bt,[2,31]),{40:54,52:[1,55]},u(bt,[2,46]),u(yt,[2,7]),u(yt,[2,11]),{11:56,22:ht,47:ot},u(yt,[2,15]),u(Ct,w,{8:57}),{22:[1,58]},{22:[1,59]},{21:[1,60]},{22:[2,41]},{22:[2,42]},u(yt,[2,28]),u(yt,[2,29]),{38:61,53:j},{53:[2,45]},u(yt,[2,12],{12:[1,62]}),{4:F,5:B,6:28,9:14,10:16,11:18,14:P,15:G,17:K,19:[1,63],20:J,22:ht,23:tt,24:kt,25:at,26:ut,27:vt,30:29,31:Zt,33:Gt,35:xt,36:6,41:It,42:wt,43:mt,44:X,47:ot,50:A},u(yt,[2,18],{18:[1,64]}),{29:[1,65]},{22:[1,66]},u(bt,[2,32]),u(yt,[2,13]),u(yt,[2,17]),u(Ct,w,{8:67}),u(yt,[2,24]),u(yt,[2,25]),{4:F,5:B,6:28,9:14,10:16,11:18,14:P,15:G,17:K,19:[1,68],20:J,22:ht,23:tt,24:kt,25:at,26:ut,27:vt,30:29,31:Zt,33:Gt,35:xt,36:6,41:It,42:wt,43:mt,44:X,47:ot,50:A},u(yt,[2,19])],defaultActions:{7:[2,43],8:[2,1],9:[2,2],10:[2,3],50:[2,41],51:[2,42],55:[2,45]},parseError:function(xe,pe){if(!pe.recoverable){var _e=new Error(xe);throw _e.hash=pe,_e}this.trace(xe)},parse:function(xe){var pe=this,_e=[0],Ae=[],De=[null],me=[],wn=this.table,de="",Qe=0,ne=0,Qt=0,se=2,Et=1,te=me.slice.call(arguments,1),st=Object.create(this.lexer),dt={yy:{}};for(var ft in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ft)&&(dt.yy[ft]=this.yy[ft]);st.setInput(xe,dt.yy),dt.yy.lexer=st,dt.yy.parser=this,st.yylloc===void 0&&(st.yylloc={});var Mt=st.yylloc;me.push(Mt);var fe=st.options&&st.options.ranges;function Le(){var ln;return typeof(ln=Ae.pop()||st.lex()||Et)!="number"&&(ln instanceof Array&&(ln=(Ae=ln).pop()),ln=pe.symbols_[ln]||ln),ln}typeof dt.yy.parseError=="function"?this.parseError=dt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var en,qe,sn,Fe,Te,Oe,Be,ge,re,An={};;){if(sn=_e[_e.length-1],this.defaultActions[sn]?Fe=this.defaultActions[sn]:(en==null&&(en=Le()),Fe=wn[sn]&&wn[sn][en]),Fe===void 0||!Fe.length||!Fe[0]){var Ie="";for(Oe in re=[],wn[sn])this.terminals_[Oe]&&Oe>se&&re.push("'"+this.terminals_[Oe]+"'");Ie=st.showPosition?"Parse error on line "+(Qe+1)+`: `+st.showPosition()+` Expecting `+re.join(", ")+", got '"+(this.terminals_[en]||en)+"'":"Parse error on line "+(Qe+1)+": Unexpected "+(en==Et?"end of input":"'"+(this.terminals_[en]||en)+"'"),this.parseError(Ie,{text:st.match,token:this.terminals_[en]||en,line:st.yylineno,loc:Mt,expected:re})}if(Fe[0]instanceof Array&&Fe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+sn+", token: "+en);switch(Fe[0]){case 1:_e.push(en),De.push(st.yytext),me.push(st.yylloc),_e.push(Fe[1]),en=null,qe?(en=qe,qe=null):(ne=st.yyleng,de=st.yytext,Qe=st.yylineno,Mt=st.yylloc,Qt>0);break;case 2:if(Be=this.productions_[Fe[1]][1],An.$=De[De.length-Be],An._$={first_line:me[me.length-(Be||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(Be||1)].first_column,last_column:me[me.length-1].last_column},fe&&(An._$.range=[me[me.length-(Be||1)].range[0],me[me.length-1].range[1]]),(Te=this.performAction.apply(An,[de,ne,Qe,dt.yy,Fe[1],De,me].concat(te)))!==void 0)return Te;Be&&(_e=_e.slice(0,-1*Be*2),De=De.slice(0,-1*Be),me=me.slice(0,-1*Be)),_e.push(this.productions_[Fe[1]][0]),De.push(An.$),me.push(An._$),ge=wn[_e[_e.length-2]][_e[_e.length-1]],_e.push(ge);break;case 3:return!0}}return!0}},be={EOF:1,parseError:function(xe,pe){if(!this.yy.parser)throw new Error(xe);this.yy.parser.parseError(xe,pe)},setInput:function(xe,pe){return this.yy=pe||this.yy||{},this._input=xe,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 xe=this._input[0];return this.yytext+=xe,this.yyleng++,this.offset++,this.match+=xe,this.matched+=xe,xe.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xe},unput:function(xe){var pe=xe.length,_e=xe.split(/(?:\r\n?|\n)/g);this._input=xe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-pe),this.offset-=pe;var Ae=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),_e.length-1&&(this.yylineno-=_e.length-1);var De=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:_e?(_e.length===Ae.length?this.yylloc.first_column:0)+Ae[Ae.length-_e.length].length-_e[0].length:this.yylloc.first_column-pe},this.options.ranges&&(this.yylloc.range=[De[0],De[0]+this.yyleng-pe]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(xe){this.unput(this.match.slice(xe))},pastInput:function(){var xe=this.matched.substr(0,this.matched.length-this.match.length);return(xe.length>20?"...":"")+xe.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var xe=this.match;return xe.length<20&&(xe+=this._input.substr(0,20-xe.length)),(xe.substr(0,20)+(xe.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var xe=this.pastInput(),pe=new Array(xe.length+1).join("-");return xe+this.upcomingInput()+` `+pe+"^"},test_match:function(xe,pe){var _e,Ae,De;if(this.options.backtrack_lexer&&(De={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&&(De.yylloc.range=this.yylloc.range.slice(0))),(Ae=xe[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=Ae.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ae?Ae[Ae.length-1].length-Ae[Ae.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+xe[0].length},this.yytext+=xe[0],this.match+=xe[0],this.matches=xe,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(xe[0].length),this.matched+=xe[0],_e=this.performAction.call(this,this.yy,this,pe,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_e)return _e;if(this._backtrack){for(var me in De)this[me]=De[me];return!1}return!1},next:function(){if(this.done)return this.EOF;var xe,pe,_e,Ae;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var De=this._currentRules(),me=0;mepe[0].length)){if(pe=_e,Ae=me,this.options.backtrack_lexer){if((xe=this.test_match(_e,De[me]))!==!1)return xe;if(this._backtrack){pe=!1;continue}return!1}if(!this.options.flex)break}return pe?(xe=this.test_match(pe,De[Ae]))!==!1&&xe:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(xe){this.conditionStack.push(xe)},popState:function(){return this.conditionStack.length-1>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(xe){return(xe=this.conditionStack.length-1-Math.abs(xe||0))>=0?this.conditionStack[xe]:"INITIAL"},pushState:function(xe){this.begin(xe)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xe,pe,_e,Ae){switch(_e){case 0:case 33:return 41;case 1:case 34:return 42;case 2:case 35:return 43;case 3:case 36:return 44;case 4:return this.begin("open_directive"),50;case 5:return this.begin("type_directive"),51;case 6:return this.popState(),this.begin("arg_directive"),39;case 7:return this.popState(),this.popState(),53;case 8:return 52;case 9:case 10:case 12:case 13:case 14:case 15:case 46:case 52:break;case 11:case 66:return 5;case 16:return this.pushState("SCALE"),15;case 17:return 16;case 18:case 24:case 40:case 43:this.popState();break;case 19:return this.begin("acc_title"),31;case 20:return this.popState(),"acc_title_value";case 21:return this.begin("acc_descr"),33;case 22:return this.popState(),"acc_descr_value";case 23:this.begin("acc_descr_multiline");break;case 25:return"acc_descr_multiline_value";case 26:this.pushState("STATE");break;case 27:case 30:return this.popState(),pe.yytext=pe.yytext.slice(0,-8).trim(),23;case 28:case 31:return this.popState(),pe.yytext=pe.yytext.slice(0,-8).trim(),24;case 29:case 32:return this.popState(),pe.yytext=pe.yytext.slice(0,-10).trim(),25;case 37:this.begin("STATE_STRING");break;case 38:return this.popState(),this.pushState("STATE_ID"),"AS";case 39:case 54:return this.popState(),"ID";case 41:return"STATE_DESCR";case 42:return 17;case 44:return this.popState(),this.pushState("struct"),18;case 45:return this.popState(),19;case 47:return this.begin("NOTE"),27;case 48:return this.popState(),this.pushState("NOTE_ID"),48;case 49:return this.popState(),this.pushState("NOTE_ID"),49;case 50:this.popState(),this.pushState("FLOATING_NOTE");break;case 51:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 53:return"NOTE_TEXT";case 55:return this.popState(),this.pushState("NOTE_TEXT"),22;case 56:return this.popState(),pe.yytext=pe.yytext.substr(2).trim(),29;case 57:return this.popState(),pe.yytext=pe.yytext.slice(0,-8).trim(),29;case 58:case 59:return 7;case 60:return 14;case 61:return 47;case 62:return 22;case 63:return pe.yytext=pe.yytext.trim(),12;case 64:return 13;case 65:return 26;case 67:return"INVALID"}},rules:[/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[13,14],inclusive:!1},close_directive:{rules:[13,14],inclusive:!1},arg_directive:{rules:[7,8,13,14],inclusive:!1},type_directive:{rules:[6,7,13,14],inclusive:!1},open_directive:{rules:[5,13,14],inclusive:!1},struct:{rules:[13,14,26,33,34,35,36,45,46,47,61,62,63,64,65],inclusive:!1},FLOATING_NOTE_ID:{rules:[54],inclusive:!1},FLOATING_NOTE:{rules:[51,52,53],inclusive:!1},NOTE_TEXT:{rules:[56,57],inclusive:!1},NOTE_ID:{rules:[55],inclusive:!1},NOTE:{rules:[48,49,50],inclusive:!1},acc_descr_multiline:{rules:[24,25],inclusive:!1},acc_descr:{rules:[22],inclusive:!1},acc_title:{rules:[20],inclusive:!1},SCALE:{rules:[17,18],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[39],inclusive:!1},STATE_STRING:{rules:[40,41],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[13,14,27,28,29,30,31,32,37,38,42,43,44],inclusive:!1},ID:{rules:[13,14],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,12,14,15,16,19,21,23,26,44,47,58,59,60,61,62,63,64,66,67],inclusive:!0}}};function We(){this.yy={}}return $t.lexer=be,We.prototype=$t,$t.Parser=We,new We}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(3069).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},9763:(M,z,p)=>{M=p.nmd(M);var b=function(){var u=function(at,ut,vt,Zt){for(vt=vt||{},Zt=at.length;Zt--;vt[at[Zt]]=ut);return vt},_=[1,2],y=[1,5],E=[6,9,11,17,18,20,22,23,24,26],A=[1,15],w=[1,16],F=[1,17],B=[1,18],P=[1,19],G=[1,20],K=[1,24],J=[4,6,9,11,17,18,20,22,23,24,26],ht={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(at,ut,vt,Zt,Gt,xt,It){var wt=xt.length-1;switch(Gt){case 1:return xt[wt-1];case 3:case 7:case 8:this.$=[];break;case 4:xt[wt-1].push(xt[wt]),this.$=xt[wt-1];break;case 5:case 6:this.$=xt[wt];break;case 11:Zt.setDiagramTitle(xt[wt].substr(6)),this.$=xt[wt].substr(6);break;case 12:this.$=xt[wt].trim(),Zt.setAccTitle(this.$);break;case 13:case 14:this.$=xt[wt].trim(),Zt.setAccDescription(this.$);break;case 15:Zt.addSection(xt[wt].substr(8)),this.$=xt[wt].substr(8);break;case 16:Zt.addTask(xt[wt-1],xt[wt]),this.$="task";break;case 18:Zt.parseDirective("%%{","open_directive");break;case 19:Zt.parseDirective(xt[wt],"type_directive");break;case 20:xt[wt]=xt[wt].trim().replace(/'/g,'"'),Zt.parseDirective(xt[wt],"arg_directive");break;case 21:Zt.parseDirective("}%%","close_directive","journey")}},table:[{3:1,4:_,7:3,12:4,26:y},{1:[3]},u(E,[2,3],{5:6}),{3:7,4:_,7:3,12:4,26:y},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:A,18:w,20:F,22:B,23:P,24:G,26:y},{1:[2,2]},{14:22,15:[1,23],29:K},u([15,29],[2,19]),u(E,[2,8],{1:[2,1]}),u(E,[2,4]),{7:21,10:25,12:4,17:A,18:w,20:F,22:B,23:P,24:G,26:y},u(E,[2,6]),u(E,[2,7]),u(E,[2,11]),{19:[1,26]},{21:[1,27]},u(E,[2,14]),u(E,[2,15]),{25:[1,28]},u(E,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},u(E,[2,5]),u(E,[2,12]),u(E,[2,13]),u(E,[2,16]),u(J,[2,9]),{14:32,29:K},{29:[2,20]},{11:[1,33]},u(J,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(at,ut){if(!ut.recoverable){var vt=new Error(at);throw vt.hash=ut,vt}this.trace(at)},parse:function(at){var ut=this,vt=[0],Zt=[],Gt=[null],xt=[],It=this.table,wt="",mt=0,X=0,ot=0,j=2,yt=1,Y=xt.slice.call(arguments,1),bt=Object.create(this.lexer),Ct={yy:{}};for(var $t in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$t)&&(Ct.yy[$t]=this.yy[$t]);bt.setInput(at,Ct.yy),Ct.yy.lexer=bt,Ct.yy.parser=this,bt.yylloc===void 0&&(bt.yylloc={});var be=bt.yylloc;xt.push(be);var We=bt.options&&bt.options.ranges;function xe(){var Et;return typeof(Et=Zt.pop()||bt.lex()||yt)!="number"&&(Et instanceof Array&&(Et=(Zt=Et).pop()),Et=ut.symbols_[Et]||Et),Et}typeof Ct.yy.parseError=="function"?this.parseError=Ct.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var pe,_e,Ae,De,me,wn,de,Qe,ne,Qt={};;){if(Ae=vt[vt.length-1],this.defaultActions[Ae]?De=this.defaultActions[Ae]:(pe==null&&(pe=xe()),De=It[Ae]&&It[Ae][pe]),De===void 0||!De.length||!De[0]){var se="";for(wn in ne=[],It[Ae])this.terminals_[wn]&&wn>j&&ne.push("'"+this.terminals_[wn]+"'");se=bt.showPosition?"Parse error on line "+(mt+1)+`: `+bt.showPosition()+` Expecting `+ne.join(", ")+", got '"+(this.terminals_[pe]||pe)+"'":"Parse error on line "+(mt+1)+": Unexpected "+(pe==yt?"end of input":"'"+(this.terminals_[pe]||pe)+"'"),this.parseError(se,{text:bt.match,token:this.terminals_[pe]||pe,line:bt.yylineno,loc:be,expected:ne})}if(De[0]instanceof Array&&De.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ae+", token: "+pe);switch(De[0]){case 1:vt.push(pe),Gt.push(bt.yytext),xt.push(bt.yylloc),vt.push(De[1]),pe=null,_e?(pe=_e,_e=null):(X=bt.yyleng,wt=bt.yytext,mt=bt.yylineno,be=bt.yylloc,ot>0);break;case 2:if(de=this.productions_[De[1]][1],Qt.$=Gt[Gt.length-de],Qt._$={first_line:xt[xt.length-(de||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(de||1)].first_column,last_column:xt[xt.length-1].last_column},We&&(Qt._$.range=[xt[xt.length-(de||1)].range[0],xt[xt.length-1].range[1]]),(me=this.performAction.apply(Qt,[wt,X,mt,Ct.yy,De[1],Gt,xt].concat(Y)))!==void 0)return me;de&&(vt=vt.slice(0,-1*de*2),Gt=Gt.slice(0,-1*de),xt=xt.slice(0,-1*de)),vt.push(this.productions_[De[1]][0]),Gt.push(Qt.$),xt.push(Qt._$),Qe=It[vt[vt.length-2]][vt[vt.length-1]],vt.push(Qe);break;case 3:return!0}}return!0}},tt={EOF:1,parseError:function(at,ut){if(!this.yy.parser)throw new Error(at);this.yy.parser.parseError(at,ut)},setInput:function(at,ut){return this.yy=ut||this.yy||{},this._input=at,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 at=this._input[0];return this.yytext+=at,this.yyleng++,this.offset++,this.match+=at,this.matched+=at,at.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),at},unput:function(at){var ut=at.length,vt=at.split(/(?:\r\n?|\n)/g);this._input=at+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ut),this.offset-=ut;var Zt=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),vt.length-1&&(this.yylineno-=vt.length-1);var Gt=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:vt?(vt.length===Zt.length?this.yylloc.first_column:0)+Zt[Zt.length-vt.length].length-vt[0].length:this.yylloc.first_column-ut},this.options.ranges&&(this.yylloc.range=[Gt[0],Gt[0]+this.yyleng-ut]),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). `+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(at){this.unput(this.match.slice(at))},pastInput:function(){var at=this.matched.substr(0,this.matched.length-this.match.length);return(at.length>20?"...":"")+at.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var at=this.match;return at.length<20&&(at+=this._input.substr(0,20-at.length)),(at.substr(0,20)+(at.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var at=this.pastInput(),ut=new Array(at.length+1).join("-");return at+this.upcomingInput()+` `+ut+"^"},test_match:function(at,ut){var vt,Zt,Gt;if(this.options.backtrack_lexer&&(Gt={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&&(Gt.yylloc.range=this.yylloc.range.slice(0))),(Zt=at[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=Zt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Zt?Zt[Zt.length-1].length-Zt[Zt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+at[0].length},this.yytext+=at[0],this.match+=at[0],this.matches=at,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(at[0].length),this.matched+=at[0],vt=this.performAction.call(this,this.yy,this,ut,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),vt)return vt;if(this._backtrack){for(var xt in Gt)this[xt]=Gt[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;var at,ut,vt,Zt;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var Gt=this._currentRules(),xt=0;xtut[0].length)){if(ut=vt,Zt=xt,this.options.backtrack_lexer){if((at=this.test_match(vt,Gt[xt]))!==!1)return at;if(this._backtrack){ut=!1;continue}return!1}if(!this.options.flex)break}return ut?(at=this.test_match(ut,Gt[Zt]))!==!1&&at:this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(at){this.conditionStack.push(at)},popState:function(){return this.conditionStack.length-1>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(at){return(at=this.conditionStack.length-1-Math.abs(at||0))>=0?this.conditionStack[at]:"INITIAL"},pushState:function(at){this.begin(at)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(at,ut,vt,Zt){switch(vt){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:case 6:case 8:case 9:break;case 7:return 11;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};function kt(){this.yy={}}return ht.lexer=tt,kt.prototype=ht,ht.Parser=kt,new kt}();z.parser=b,z.Parser=b.Parser,z.parse=function(){return b.parse.apply(b,arguments)},z.main=function(u){u[1]||(console.log("Usage: "+u[0]+" FILE"),process.exit(1));var _=p(9143).readFileSync(p(6470).normalize(u[1]),"utf8");return z.parser.parse(_)},p.c[p.s]===M&&z.main(process.argv.slice(1))},7967:(M,z)=>{z.N=void 0;var p=/^([^\w]*)(javascript|data|vbscript)/im,b=/&#(\w+)(^\w|;)?/g,u=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,_=/^([^:]+):/gm,y=[".","/"];z.N=function(E){var A,w=(A=E||"",A.replace(b,function(P,G){return String.fromCharCode(G)})).replace(u,"").trim();if(!w)return"about:blank";if(function(P){return y.indexOf(P[0])>-1}(w))return w;var F=w.match(_);if(!F)return w;var B=F[0];return p.test(B)?"about:blank":w}},3841:M=>{M.exports=function(z,p){return z.intersect(p)}},6187:(M,z,p)=>{p.d(z,{Z:()=>fs});var b=p(1941),u=p.n(b),_={debug:1,info:2,warn:3,error:4,fatal:5},y={debug:function(){},info:function(){},warn:function(){},error:function(){},fatal:function(){}},E=function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"fatal";isNaN(i)&&(i=i.toLowerCase(),_[i]!==void 0&&(i=_[i])),y.trace=function(){},y.debug=function(){},y.info=function(){},y.warn=function(){},y.error=function(){},y.fatal=function(){},i<=_.fatal&&(y.fatal=console.error?console.error.bind(console,A("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",A("FATAL"))),i<=_.error&&(y.error=console.error?console.error.bind(console,A("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",A("ERROR"))),i<=_.warn&&(y.warn=console.warn?console.warn.bind(console,A("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",A("WARN"))),i<=_.info&&(y.info=console.info?console.info.bind(console,A("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",A("INFO"))),i<=_.debug&&(y.debug=console.debug?console.debug.bind(console,A("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",A("DEBUG")))},A=function(i){var n=u()().format("ss.SSS");return"%c".concat(n," : ").concat(i," : ")},w=p(7543),F="comm",B="rule",P="decl",G=Math.abs,K=String.fromCharCode;function J(i){return i.trim()}function ht(i,n,l){return i.replace(n,l)}function tt(i,n){return i.indexOf(n)}function kt(i,n){return 0|i.charCodeAt(n)}function at(i,n,l){return i.slice(n,l)}function ut(i){return i.length}function vt(i){return i.length}function Zt(i,n){return n.push(i),i}function Gt(i,n){for(var l="",d=vt(i),g=0;g0?kt(j,--X):0,wt--,ot===10&&(wt=1,It--),ot}function bt(){return ot=X2||We(ot)>3?"":" "}function _e(i,n){for(;--n&&bt()&&!(ot<48||ot>102||ot>57&&ot<65||ot>70&&ot<97););return be(i,$t()+(n<6&&Ct()==32&&bt()==32))}function Ae(i){for(;bt();)switch(ot){case i:return X;case 34:case 39:i!==34&&i!==39&&Ae(ot);break;case 40:i===41&&Ae(i);break;case 92:bt()}return X}function De(i,n){for(;bt()&&i+ot!==57&&(i+ot!==84||Ct()!==47););return"/*"+be(n,X-1)+"*"+K(i===47?i:bt())}function me(i){for(;!We(Ct());)bt();return be(i,X)}function wn(i){return function(n){return j="",n}(de("",null,null,null,[""],i=function(n){return It=wt=1,mt=ut(j=n),X=0,[]}(i),0,[0],i))}function de(i,n,l,d,g,T,k,S,N){for(var O=0,q=0,V=k,et=0,Q=0,Tt=0,St=1,Lt=1,Nt=1,Ot=0,Ft="",_t=g,ee=T,ke=d,ue=Ft;Lt;)switch(Tt=Ot,Ot=bt()){case 40:if(Tt!=108&&ue.charCodeAt(V-1)==58){tt(ue+=ht(xe(Ot),"&","&\f"),"&\f")!=-1&&(Nt=-1);break}case 34:case 39:case 91:ue+=xe(Ot);break;case 9:case 10:case 13:case 32:ue+=pe(Tt);break;case 92:ue+=_e($t()-1,7);continue;case 47:switch(Ct()){case 42:case 47:Zt(ne(De(bt(),$t()),n,l),N);break;default:ue+="/"}break;case 123*St:S[O++]=ut(ue)*Nt;case 125*St:case 59:case 0:switch(Ot){case 0:case 125:Lt=0;case 59+q:Q>0&&ut(ue)-V&&Zt(Q>32?Qt(ue+";",d,l,V-1):Qt(ht(ue," ","")+";",d,l,V-2),N);break;case 59:ue+=";";default:if(Zt(ke=Qe(ue,n,l,O,q,g,S,Ft,_t=[],ee=[],V),T),Ot===123)if(q===0)de(ue,n,ke,ke,_t,T,V,S,ee);else switch(et){case 100:case 109:case 115:de(i,ke,ke,d&&Zt(Qe(i,ke,ke,0,0,g,S,Ft,g,_t=[],V),ee),g,ee,V,S,d?_t:ee);break;default:de(ue,ke,ke,ke,[""],ee,0,S,ee)}}O=q=Q=0,St=Nt=1,Ft=ue="",V=k;break;case 58:V=1+ut(ue),Q=Tt;default:if(St<1){if(Ot==123)--St;else if(Ot==125&&St++==0&&Y()==125)continue}switch(ue+=K(Ot),Ot*St){case 38:Nt=q>0?1:(ue+="\f",-1);break;case 44:S[O++]=(ut(ue)-1)*Nt,Nt=1;break;case 64:Ct()===45&&(ue+=xe(bt())),et=Ct(),q=V=ut(Ft=ue+=me($t())),Ot++;break;case 45:Tt===45&&ut(ue)==2&&(St=0)}}return T}function Qe(i,n,l,d,g,T,k,S,N,O,q){for(var V=g-1,et=g===0?T:[""],Q=vt(et),Tt=0,St=0,Lt=0;Tt0?et[Nt]+" "+Ot:ht(Ot,/&\f/g,et[Nt])))&&(N[Lt++]=Ft);return yt(i,n,l,g===0?B:S,N,O,q)}function ne(i,n,l){return yt(i,n,l,F,K(ot),at(i,2,-2),0)}function Qt(i,n,l,d){return yt(i,n,l,P,at(i,0,d),at(i,d+1,-1),d)}const se="9.1.7";function Et(i){return Et=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Et(i)}const te=function i(n,l,d){var g=Object.assign({depth:2,clobber:!1},d),T=g.depth,k=g.clobber;return Array.isArray(l)&&!Array.isArray(n)?(l.forEach(function(S){return i(n,S,d)}),n):Array.isArray(l)&&Array.isArray(n)?(l.forEach(function(S){n.indexOf(S)===-1&&n.push(S)}),n):n===void 0||T<=0?n!=null&&Et(n)==="object"&&Et(l)==="object"?Object.assign(n,l):l:(l!==void 0&&Et(n)==="object"&&Et(l)==="object"&&Object.keys(l).forEach(function(S){Et(l[S])!=="object"||n[S]!==void 0&&Et(n[S])!=="object"?(k||Et(n[S])!=="object"&&Et(l[S])!=="object")&&(n[S]=l[S]):(n[S]===void 0&&(n[S]=Array.isArray(l[S])?[]:{}),n[S]=i(n[S],l[S],{depth:T-1,clobber:k}))}),n)},st={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const n=i/255;return i>.03928?Math.pow((n+.055)/1.055,2.4):n/12.92},hue2rgb:(i,n,l)=>(l<0&&(l+=1),l>1&&(l-=1),l<1/6?i+6*(n-i)*l:l<.5?n:l<2/3?i+(n-i)*(2/3-l)*6:i),hsl2rgb:({h:i,s:n,l},d)=>{if(!n)return 2.55*l;i/=360,n/=100;const g=(l/=100)<.5?l*(1+n):l+n-l*n,T=2*l-g;switch(d){case"r":return 255*st.hue2rgb(T,g,i+1/3);case"g":return 255*st.hue2rgb(T,g,i);case"b":return 255*st.hue2rgb(T,g,i-1/3)}},rgb2hsl:({r:i,g:n,b:l},d)=>{i/=255,n/=255,l/=255;const g=Math.max(i,n,l),T=Math.min(i,n,l),k=(g+T)/2;if(d==="l")return 100*k;if(g===T)return 0;const S=g-T;if(d==="s")return 100*(k>.5?S/(2-g-T):S/(g+T));switch(g){case i:return 60*((n-l)/S+(nn>l?Math.min(n,Math.max(l,i)):Math.min(l,Math.max(n,i)),round:i=>Math.round(1e10*i)/1e10},unit:{dec2hex:i=>{const n=Math.round(i).toString(16);return n.length>1?n:`0${n}`}}},ft={};for(let i=0;i<=255;i++)ft[i]=dt.unit.dec2hex(i);const Mt=new class{constructor(i,n){this.color=n,this.changed=!1,this.data=i,this.type=new class{constructor(){this.type=0}get(){return this.type}set(l){if(this.type&&this.type!==l)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=l}reset(){this.type=0}is(l){return this.type===l}}}set(i,n){return this.color=n,this.changed=!1,this.data=i,this.type.type=0,this}_ensureHSL(){const i=this.data,{h:n,s:l,l:d}=i;n===void 0&&(i.h=dt.channel.rgb2hsl(i,"h")),l===void 0&&(i.s=dt.channel.rgb2hsl(i,"s")),d===void 0&&(i.l=dt.channel.rgb2hsl(i,"l"))}_ensureRGB(){const i=this.data,{r:n,g:l,b:d}=i;n===void 0&&(i.r=dt.channel.hsl2rgb(i,"r")),l===void 0&&(i.g=dt.channel.hsl2rgb(i,"g")),d===void 0&&(i.b=dt.channel.hsl2rgb(i,"b"))}get r(){const i=this.data,n=i.r;return this.type.is(2)||n===void 0?(this._ensureHSL(),dt.channel.hsl2rgb(i,"r")):n}get g(){const i=this.data,n=i.g;return this.type.is(2)||n===void 0?(this._ensureHSL(),dt.channel.hsl2rgb(i,"g")):n}get b(){const i=this.data,n=i.b;return this.type.is(2)||n===void 0?(this._ensureHSL(),dt.channel.hsl2rgb(i,"b")):n}get h(){const i=this.data,n=i.h;return this.type.is(1)||n===void 0?(this._ensureRGB(),dt.channel.rgb2hsl(i,"h")):n}get s(){const i=this.data,n=i.s;return this.type.is(1)||n===void 0?(this._ensureRGB(),dt.channel.rgb2hsl(i,"s")):n}get l(){const i=this.data,n=i.l;return this.type.is(1)||n===void 0?(this._ensureRGB(),dt.channel.rgb2hsl(i,"l")):n}get a(){return this.data.a}set r(i){this.type.set(1),this.changed=!0,this.data.r=i}set g(i){this.type.set(1),this.changed=!0,this.data.g=i}set b(i){this.type.set(1),this.changed=!0,this.data.b=i}set h(i){this.type.set(2),this.changed=!0,this.data.h=i}set s(i){this.type.set(2),this.changed=!0,this.data.s=i}set l(i){this.type.set(2),this.changed=!0,this.data.l=i}set a(i){this.changed=!0,this.data.a=i}}({r:0,g:0,b:0,a:0},"transparent"),fe={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:i=>{if(i.charCodeAt(0)!==35)return;const n=i.match(fe.re);if(!n)return;const l=n[1],d=parseInt(l,16),g=l.length,T=g%4==0,k=g>4,S=k?1:17,N=k?8:4,O=T?0:-1,q=k?255:15;return Mt.set({r:(d>>N*(O+3)&q)*S,g:(d>>N*(O+2)&q)*S,b:(d>>N*(O+1)&q)*S,a:T?(d&q)*S/255:1},i)},stringify:i=>{const{r:n,g:l,b:d,a:g}=i;return g<1?`#${ft[Math.round(n)]}${ft[Math.round(l)]}${ft[Math.round(d)]}${ft[Math.round(255*g)]}`:`#${ft[Math.round(n)]}${ft[Math.round(l)]}${ft[Math.round(d)]}`}},Le=fe,en={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:i=>{const n=i.match(en.hueRe);if(n){const[,l,d]=n;switch(d){case"grad":return dt.channel.clamp.h(.9*parseFloat(l));case"rad":return dt.channel.clamp.h(180*parseFloat(l)/Math.PI);case"turn":return dt.channel.clamp.h(360*parseFloat(l))}}return dt.channel.clamp.h(parseFloat(i))},parse:i=>{const n=i.charCodeAt(0);if(n!==104&&n!==72)return;const l=i.match(en.re);if(!l)return;const[,d,g,T,k,S]=l;return Mt.set({h:en._hue2deg(d),s:dt.channel.clamp.s(parseFloat(g)),l:dt.channel.clamp.l(parseFloat(T)),a:k?dt.channel.clamp.a(S?parseFloat(k)/100:parseFloat(k)):1},i)},stringify:i=>{const{h:n,s:l,l:d,a:g}=i;return g<1?`hsla(${dt.lang.round(n)}, ${dt.lang.round(l)}%, ${dt.lang.round(d)}%, ${g})`:`hsl(${dt.lang.round(n)}, ${dt.lang.round(l)}%, ${dt.lang.round(d)}%)`}},qe=en,sn={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:i=>{i=i.toLowerCase();const n=sn.colors[i];if(n)return Le.parse(n)},stringify:i=>{const n=Le.stringify(i);for(const l in sn.colors)if(sn.colors[l]===n)return l}},Fe=sn,Te={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:i=>{const n=i.charCodeAt(0);if(n!==114&&n!==82)return;const l=i.match(Te.re);if(!l)return;const[,d,g,T,k,S,N,O,q]=l;return Mt.set({r:dt.channel.clamp.r(g?2.55*parseFloat(d):parseFloat(d)),g:dt.channel.clamp.g(k?2.55*parseFloat(T):parseFloat(T)),b:dt.channel.clamp.b(N?2.55*parseFloat(S):parseFloat(S)),a:O?dt.channel.clamp.a(q?parseFloat(O)/100:parseFloat(O)):1},i)},stringify:i=>{const{r:n,g:l,b:d,a:g}=i;return g<1?`rgba(${dt.lang.round(n)}, ${dt.lang.round(l)}, ${dt.lang.round(d)}, ${dt.lang.round(g)})`:`rgb(${dt.lang.round(n)}, ${dt.lang.round(l)}, ${dt.lang.round(d)})`}},Oe=Te,Be={format:{keyword:Fe,hex:Le,rgb:Oe,rgba:Oe,hsl:qe,hsla:qe},parse:i=>{if(typeof i!="string")return i;const n=Le.parse(i)||Oe.parse(i)||qe.parse(i)||Fe.parse(i);if(n)return n;throw new Error(`Unsupported color format: "${i}"`)},stringify:i=>!i.changed&&i.color?i.color:i.type.is(2)||i.data.r===void 0?qe.stringify(i):i.a<1||!Number.isInteger(i.r)||!Number.isInteger(i.g)||!Number.isInteger(i.b)?Oe.stringify(i):Le.stringify(i)},ge=(i,n)=>{const l=Be.parse(i);for(const d in n)l[d]=dt.channel.clamp[d](n[d]);return Be.stringify(l)},re=(i,n)=>{const l=Be.parse(i),d={};for(const g in n)n[g]&&(d[g]=l[g]+n[g]);return ge(i,d)},An=(i,n,l=0,d=1)=>{if(typeof i!="number")return ge(i,{a:n});const g=Mt.set({r:dt.channel.clamp.r(i),g:dt.channel.clamp.g(n),b:dt.channel.clamp.b(l),a:dt.channel.clamp.a(d)});return Be.stringify(g)},Ie=(i,n=100)=>{const l=Be.parse(i);return l.r=255-l.r,l.g=255-l.g,l.b=255-l.b,((d,g,T=50)=>{const{r:k,g:S,b:N,a:O}=Be.parse(d),{r:q,g:V,b:et,a:Q}=Be.parse(g),Tt=T/100,St=2*Tt-1,Lt=O-Q,Nt=((St*Lt==-1?St:(St+Lt)/(1+St*Lt))+1)/2,Ot=1-Nt;return An(k*Nt+q*Ot,S*Nt+V*Ot,N*Nt+et*Ot,O*Tt+Q*(1-Tt))})(l,i,n)},ln=(i,n,l)=>{const d=Be.parse(i),g=d[n],T=dt.channel.clamp[n](g+l);return g!==T&&(d[n]=T),Be.stringify(d)},Ye=(i,n)=>ln(i,"l",-n),fn=(i,n)=>ln(i,"l",n);var Jn=function(i,n){return re(i,n?{s:-40,l:10}:{s:-40,l:-10})};function Dn(i){return Dn=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Dn(i)}function Tn(i,n){for(var l=0;li.length)&&(n=i.length);for(var l=0,d=new Array(n);l1&&arguments[1]!==void 0?arguments[1]:"";return Object.keys(n).reduce(function(d,g){return Array.isArray(n[g])?d:Pn(n[g])==="object"&&n[g]!==null?[].concat(En(d),[l+g],En(i(n[g],""))):[].concat(En(d),[l+g])},[])}(jn,"");const Dr=jn;function Tr(i){return Tr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(n){return typeof n}:function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Tr(i)}var Sn,oi=Object.freeze(Dr),Nn=te({},oi),_r=[],Cr=te({},oi),yr=function(i,n){for(var l=te({},i),d={},g=0;g-1||n[l].indexOf(">")>-1||n[l].indexOf("url(data:")>-1)&&delete n[l],Tr(n[l])==="object"&&i(n[l])})},Nr=function(i){i.fontFamily&&(i.themeVariables&&i.themeVariables.fontFamily||(i.themeVariables={fontFamily:i.fontFamily})),_r.push(i),yr(Nn,_r)},Gn=function(){yr(Nn,_r=[])},Zr=p(7856),Ur=p.n(Zr),Ir=function(i){var n=i.replace(/\\u[\dA-F]{4}/gi,function(l){return String.fromCharCode(parseInt(l.replace(/\\u/g,""),16))});return n=(n=(n=n.replace(/\\x([0-9a-f]{2})/gi,function(l,d){return String.fromCharCode(parseInt(d,16))})).replace(/\\[\d\d\d]{3}/gi,function(l){return String.fromCharCode(parseInt(l.replace(/\\/g,""),8))})).replace(/\\[\d\d\d]{2}/gi,function(l){return String.fromCharCode(parseInt(l.replace(/\\/g,""),8))})},Qr=function(i){for(var n="",l=0;l>=0;){if(!((l=i.indexOf("=0)){n+=i,l=-1;break}n+=i.substr(0,l),(l=(i=i.substr(l+1)).indexOf("<\/script>"))>=0&&(l+=9,i=i.substr(l))}var d=Ir(n);return(d=(d=(d=(d=d.replace(/script>/gi,"#")).replace(/javascript:/gi,"#")).replace(/javascript&colon/gi,"#")).replace(/onerror=/gi,"onerror:")).replace(/`)}else k.securityLevel!=="loose"&&(Rt=Ur().sanitize(Rt,{ADD_TAGS:["foreignobject"],ADD_ATTR:["dominant-baseline"]}));if(l!==void 0)switch(Lt){case"flowchart":case"flowchart-v2":l(Rt,ga.bindFunctions);break;case"gantt":l(Rt,Du.bindFunctions);break;case"class":case"classDiagram":l(Rt,aa.bindFunctions);break;default:l(Rt)}else y.debug("CB = undefined!");Ls.forEach(function(oe){oe()}),Ls=[];var ie=k.securityLevel==="sandbox"?"#i"+i:"#d"+i,ce=(0,w.select)(ie).node();if(ce!==null&&typeof ce.remove=="function"&&(0,w.select)(ie).node().remove(),N)throw N;return Rt},parse:function(i,n){Pr||(Rl(),Pr=!0);var l=!1;try{var d=n||new Pl(i);return d.db.clear(),d.parse(i)}catch(g){if(l=!0,!fs.parseError)throw g;g.str!=null?fs.parseError(g.str,g.hash):fs.parseError(g)}return!l},parseDirective:function(i,n,l,d){try{if(n!==void 0)switch(n=n.trim(),l){case"open_directive":ki={};break;case"type_directive":ki.type=n.toLowerCase();break;case"arg_directive":ki.args=JSON.parse(n);break;case"close_directive":(function(g,T,k){switch(y.debug("Directive type=".concat(T.type," with args:"),T.args),T.type){case"init":case"initialize":["config"].forEach(function(S){T.args[S]!==void 0&&(k==="flowchart-v2"&&(k="flowchart"),T.args[k]=T.args[S],delete T.args[S])}),y.debug("sanitize in handleDirective",T.args),fi(T.args),y.debug("sanitize in handleDirective (done)",T.args),Nr(T.args);break;case"wrap":case"nowrap":g&&g.setWrap&&g.setWrap(T.type==="wrap");break;case"themeCss":y.warn("themeCss encountered");break;default:y.warn("Unhandled directive: source: '%%{".concat(T.type,": ").concat(JSON.stringify(T.args?T.args:{}),"}%%"),T)}})(i,ki,d),ki=null}}catch(g){y.error("Error while rendering sequenceDiagram directive: ".concat(n," jison context: ").concat(l)),y.error(g.message)}},initialize:function(i){var n;i!=null&&i.fontFamily&&((n=i.themeVariables)!==null&&n!==void 0&&n.fontFamily||(i.themeVariables={fontFamily:i.fontFamily})),function(d){Sn=te({},d)}(i),i!=null&&i.theme&&In[i.theme]?i.themeVariables=In[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=In.default.getThemeVariables(i.themeVariables));var l=tr(i)==="object"?function(d){return Nn=te({},oi),Nn=te(Nn,d),d.theme&&In[d.theme]&&(Nn.themeVariables=In[d.theme].getThemeVariables(d.themeVariables)),Cr=yr(Nn,_r),Nn}(i):qr();Lr(l),E(l.logLevel),Pr||(Rl(),Pr=!0)},getConfig:Dt,setConfig:function(i){return te(Cr,i),Dt()},getSiteConfig:qr,updateSiteConfig:function(i){return Nn=te(Nn,i),yr(Nn,_r),Nn},reset:function(){Gn()},globalReset:function(){Gn(),Lr(Dt())},defaultConfig:oi});E(Dt().logLevel),Gn(Dt());const Bn=$n;var hs=function(){var i,n,l=Bn.getConfig();arguments.length>=2?(arguments[0]!==void 0&&(vn.sequenceConfig=arguments[0]),i=arguments[1]):i=arguments[0],typeof arguments[arguments.length-1]=="function"?(n=arguments[arguments.length-1],y.debug("Callback function found")):l.mermaid!==void 0&&(typeof l.mermaid.callback=="function"?(n=l.mermaid.callback,y.debug("Callback function found")):y.debug("No Callback function found")),i=i===void 0?document.querySelectorAll(".mermaid"):typeof i=="string"?document.querySelectorAll(i):i instanceof window.Node?[i]:i,y.debug("Start On Load before: "+vn.startOnLoad),vn.startOnLoad!==void 0&&(y.debug("Start On Load inner: "+vn.startOnLoad),Bn.updateSiteConfig({startOnLoad:vn.startOnLoad})),vn.ganttConfig!==void 0&&Bn.updateSiteConfig({gantt:vn.ganttConfig});for(var d,g=new qn.initIdGenerator(l.deterministicIds,l.deterministicIDSeed),T=[],k=function(N){y.info("Rendering diagram: "+i[N].id,N);var O=i[N];if(O.getAttribute("data-processed"))return"continue";O.setAttribute("data-processed",!0);var q="mermaid-".concat(g.next());d=O.innerHTML,d=qn.entityDecode(d).trim().replace(//gi,"
");var V=qn.detectInit(d);V&&y.debug("Detected early reinit: ",V);try{Bn.render(q,d,function(et,Q){O.innerHTML=et,n!==void 0&&n(q),Q&&Q(O)},O)}catch(et){y.warn("Catching Error (bootstrap)",et),typeof vn.parseError=="function"&&vn.parseError({error:et,str:et.str,hash:et.hash,message:et.str}),T.push({error:et,str:et.str,hash:et.hash,message:et.str})}},S=0;S0)throw T[0]},qi=function(){vn.startOnLoad?Bn.getConfig().startOnLoad&&vn.init():vn.startOnLoad===void 0&&(y.debug("In start, no config"),Bn.getConfig().startOnLoad&&vn.init())};typeof document<"u"&&window.addEventListener("load",function(){qi()},!1);var vn={startOnLoad:!0,htmlLabels:!0,diagrams:{},mermaidAPI:Bn,parse:Bn!=null?Bn.parse:null,render:Bn!=null?Bn.render:null,init:function(){try{hs.apply(void 0,arguments)}catch(i){y.warn("Syntax Error rendering"),y.warn(i.str)}},initThrowsErrors:hs,initialize:function(i){i.mermaid!==void 0&&(i.mermaid.startOnLoad!==void 0&&(vn.startOnLoad=i.mermaid.startOnLoad),i.mermaid.htmlLabels!==void 0&&(vn.htmlLabels=i.mermaid.htmlLabels!=="false"&&i.mermaid.htmlLabels!==!1)),Bn.initialize(i)},contentLoaded:qi,setParseErrorHandler:function(i){vn.parseError=i}};const fs=vn},4949:(M,z,p)=>{M.exports={graphlib:p(6614),dagre:p(6478),intersect:p(8114),render:p(5787),util:p(8355),version:p(5689)}},9144:(M,z,p)=>{var b=p(8355);function u(_,y,E,A){var w=_.append("marker").attr("id",y).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");b.applyStyle(w,E[A+"Style"]),E[A+"Class"]&&w.attr("class",E[A+"Class"])}M.exports={default:u,normal:u,vee:function(_,y,E,A){var w=_.append("marker").attr("id",y).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");b.applyStyle(w,E[A+"Style"]),E[A+"Class"]&&w.attr("class",E[A+"Class"])},undirected:function(_,y,E,A){var w=_.append("marker").attr("id",y).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");b.applyStyle(w,E[A+"Style"]),E[A+"Class"]&&w.attr("class",E[A+"Class"])}}},5632:(M,z,p)=>{var b=p(8355),u=p(4322),_=p(1322);M.exports=function(y,E){var A,w=E.nodes().filter(function(B){return b.isSubgraph(E,B)}),F=y.selectAll("g.cluster").data(w,function(B){return B});return F.selectAll("*").remove(),F.enter().append("g").attr("class","cluster").attr("id",function(B){return E.node(B).id}).style("opacity",0),F=y.selectAll("g.cluster"),b.applyTransition(F,E).style("opacity",1),F.each(function(B){var P=E.node(B),G=u.select(this);u.select(this).append("rect");var K=G.append("g").attr("class","label");_(K,P,P.clusterLabelPos)}),F.selectAll("rect").each(function(B){var P=E.node(B),G=u.select(this);b.applyStyle(G,P.style)}),A=F.exit?F.exit():F.selectAll(null),b.applyTransition(A,E).style("opacity",0).remove(),F}},6315:(M,z,p)=>{var b=p(1034),u=p(1322),_=p(8355),y=p(4322);M.exports=function(E,A){var w,F=E.selectAll("g.edgeLabel").data(A.edges(),function(B){return _.edgeToId(B)}).classed("update",!0);return F.exit().remove(),F.enter().append("g").classed("edgeLabel",!0).style("opacity",0),(F=E.selectAll("g.edgeLabel")).each(function(B){var P=y.select(this);P.select(".label").remove();var G=A.edge(B),K=u(P,A.edge(B),0,0).classed("label",!0),J=K.node().getBBox();G.labelId&&K.attr("id",G.labelId),b.has(G,"width")||(G.width=J.width),b.has(G,"height")||(G.height=J.height)}),w=F.exit?F.exit():F.selectAll(null),_.applyTransition(w,A).style("opacity",0).remove(),F}},940:(M,z,p)=>{var b=p(1034),u=p(3042),_=p(8355),y=p(4322);function E(A,w){var F=(y.line||y.svg.line)().x(function(B){return B.x}).y(function(B){return B.y});return(F.curve||F.interpolate)(A.curve),F(w)}M.exports=function(A,w,F){var B=A.selectAll("g.edgePath").data(w.edges(),function(K){return _.edgeToId(K)}).classed("update",!0),P=function(K,J){var ht=K.enter().append("g").attr("class","edgePath").style("opacity",0);return ht.append("path").attr("class","path").attr("d",function(tt){var kt=J.edge(tt),at=J.node(tt.v).elem;return E(kt,b.range(kt.points.length).map(function(){return vt=(ut=at).getBBox(),{x:(Zt=ut.ownerSVGElement.getScreenCTM().inverse().multiply(ut.getScreenCTM()).translate(vt.width/2,vt.height/2)).e,y:Zt.f};var ut,vt,Zt}))}),ht.append("defs"),ht}(B,w);(function(K,J){var ht=K.exit();_.applyTransition(ht,J).style("opacity",0).remove()})(B,w);var G=B.merge!==void 0?B.merge(P):B;return _.applyTransition(G,w).style("opacity",1),G.each(function(K){var J=y.select(this),ht=w.edge(K);ht.elem=this,ht.id&&J.attr("id",ht.id),_.applyClass(J,ht.class,(J.classed("update")?"update ":"")+"edgePath")}),G.selectAll("path.path").each(function(K){var J=w.edge(K);J.arrowheadId=b.uniqueId("arrowhead");var ht=y.select(this).attr("marker-end",function(){return"url("+(tt=location.href,kt=J.arrowheadId,tt.split("#")[0]+"#"+kt+")");var tt,kt}).style("fill","none");_.applyTransition(ht,w).attr("d",function(tt){return function(kt,at){var ut=kt.edge(at),vt=kt.node(at.v),Zt=kt.node(at.w),Gt=ut.points.slice(1,ut.points.length-1);return Gt.unshift(u(vt,Gt[0])),Gt.push(u(Zt,Gt[Gt.length-1])),E(ut,Gt)}(w,tt)}),_.applyStyle(ht,J.style)}),G.selectAll("defs *").remove(),G.selectAll("defs").each(function(K){var J=w.edge(K);(0,F[J.arrowhead])(y.select(this),J.arrowheadId,J,"arrowhead")}),G}},607:(M,z,p)=>{var b=p(1034),u=p(1322),_=p(8355),y=p(4322);M.exports=function(E,A,w){var F,B=A.nodes().filter(function(G){return!_.isSubgraph(A,G)}),P=E.selectAll("g.node").data(B,function(G){return G}).classed("update",!0);return P.exit().remove(),P.enter().append("g").attr("class","node").style("opacity",0),(P=E.selectAll("g.node")).each(function(G){var K=A.node(G),J=y.select(this);_.applyClass(J,K.class,(J.classed("update")?"update ":"")+"node"),J.select("g.label").remove();var ht=J.append("g").attr("class","label"),tt=u(ht,K),kt=w[K.shape],at=b.pick(tt.node().getBBox(),"width","height");K.elem=this,K.id&&J.attr("id",K.id),K.labelId&&ht.attr("id",K.labelId),b.has(K,"width")&&(at.width=K.width),b.has(K,"height")&&(at.height=K.height),at.width+=K.paddingLeft+K.paddingRight,at.height+=K.paddingTop+K.paddingBottom,ht.attr("transform","translate("+(K.paddingLeft-K.paddingRight)/2+","+(K.paddingTop-K.paddingBottom)/2+")");var ut=y.select(this);ut.select(".label-container").remove();var vt=kt(ut,at,K).classed("label-container",!0);_.applyStyle(vt,K.style);var Zt=vt.node().getBBox();K.width=Zt.width,K.height=Zt.height}),F=P.exit?P.exit():P.selectAll(null),_.applyTransition(F,A).style("opacity",0).remove(),P}},4322:(M,z,p)=>{var b;if(!b)try{b=p(7543)}catch{}b||(b=window.d3),M.exports=b},6478:(M,z,p)=>{var b;try{b=p(681)}catch{}b||(b=window.dagre),M.exports=b},6614:(M,z,p)=>{var b;try{b=p(8282)}catch{}b||(b=window.graphlib),M.exports=b},8114:(M,z,p)=>{M.exports={node:p(3042),circle:p(6587),ellipse:p(3260),polygon:p(5337),rect:p(8049)}},6587:(M,z,p)=>{var b=p(3260);M.exports=function(u,_,y){return b(u,_,_,y)}},3260:M=>{M.exports=function(z,p,b,u){var _=z.x,y=z.y,E=_-u.x,A=y-u.y,w=Math.sqrt(p*p*A*A+b*b*E*E),F=Math.abs(p*b*E/w);u.x<_&&(F=-F);var B=Math.abs(p*b*A/w);return u.y{function z(p,b){return p*b>0}M.exports=function(p,b,u,_){var y,E,A,w,F,B,P,G,K,J,ht,tt,kt;if(y=b.y-p.y,A=p.x-b.x,F=b.x*p.y-p.x*b.y,K=y*u.x+A*u.y+F,J=y*_.x+A*_.y+F,!(K!==0&&J!==0&&z(K,J)||(E=_.y-u.y,w=u.x-_.x,B=_.x*u.y-u.x*_.y,P=E*p.x+w*p.y+B,G=E*b.x+w*b.y+B,P!==0&&G!==0&&z(P,G)||(ht=y*w-E*A)==0)))return tt=Math.abs(ht/2),{x:(kt=A*B-w*F)<0?(kt-tt)/ht:(kt+tt)/ht,y:(kt=E*F-y*B)<0?(kt-tt)/ht:(kt+tt)/ht}}},3042:M=>{M.exports=function(z,p){return z.intersect(p)}},5337:(M,z,p)=>{var b=p(6808);M.exports=function(u,_,y){var E=u.x,A=u.y,w=[],F=Number.POSITIVE_INFINITY,B=Number.POSITIVE_INFINITY;_.forEach(function(kt){F=Math.min(F,kt.x),B=Math.min(B,kt.y)});for(var P=E-u.width/2-F,G=A-u.height/2-B,K=0;K<_.length;K++){var J=_[K],ht=_[K<_.length-1?K+1:0],tt=b(u,y,{x:P+J.x,y:G+J.y},{x:P+ht.x,y:G+ht.y});tt&&w.push(tt)}return w.length?(w.length>1&&w.sort(function(kt,at){var ut=kt.x-y.x,vt=kt.y-y.y,Zt=Math.sqrt(ut*ut+vt*vt),Gt=at.x-y.x,xt=at.y-y.y,It=Math.sqrt(Gt*Gt+xt*xt);return Zt{M.exports=function(z,p){var b,u,_=z.x,y=z.y,E=p.x-_,A=p.y-y,w=z.width/2,F=z.height/2;return Math.abs(A)*w>Math.abs(E)*F?(A<0&&(F=-F),b=A===0?0:F*E/A,u=F):(E<0&&(w=-w),b=w,u=E===0?0:w*A/E),{x:_+b,y:y+u}}},8284:(M,z,p)=>{var b=p(8355);M.exports=function(u,_){var y=u.append("foreignObject").attr("width","100000"),E=y.append("xhtml:div");E.attr("xmlns","http://www.w3.org/1999/xhtml");var A=_.label;switch(typeof A){case"function":E.insert(A);break;case"object":E.insert(function(){return A});break;default:E.html(A)}b.applyStyle(E,_.labelStyle),E.style("display","inline-block"),E.style("white-space","nowrap");var w=E.node().getBoundingClientRect();return y.attr("width",w.width).attr("height",w.height),y}},1322:(M,z,p)=>{var b=p(7318),u=p(8284),_=p(8287);M.exports=function(y,E,A){var w=E.label,F=y.append("g");E.labelType==="svg"?_(F,E):typeof w!="string"||E.labelType==="html"?u(F,E):b(F,E);var B,P=F.node().getBBox();switch(A){case"top":B=-E.height/2;break;case"bottom":B=E.height/2-P.height;break;default:B=-P.height/2}return F.attr("transform","translate("+-P.width/2+","+B+")"),F}},8287:(M,z,p)=>{var b=p(8355);M.exports=function(u,_){var y=u;return y.node().appendChild(_.label),b.applyStyle(y,_.labelStyle),y}},7318:(M,z,p)=>{var b=p(8355);M.exports=function(u,_){for(var y=u.append("text"),E=function(w){for(var F,B="",P=!1,G=0;G{var b;try{b={defaults:p(1747),each:p(6073),isFunction:p(3560),isPlainObject:p(8630),pick:p(9722),has:p(8721),range:p(6026),uniqueId:p(3955)}}catch{}b||(b=window._),M.exports=b},6381:(M,z,p)=>{var b=p(8355),u=p(4322);M.exports=function(_,y){var E=_.filter(function(){return!u.select(this).classed("update")});function A(w){var F=y.node(w);return"translate("+F.x+","+F.y+")"}E.attr("transform",A),b.applyTransition(_,y).style("opacity",1).attr("transform",A),b.applyTransition(E.selectAll("rect"),y).attr("width",function(w){return y.node(w).width}).attr("height",function(w){return y.node(w).height}).attr("x",function(w){return-y.node(w).width/2}).attr("y",function(w){return-y.node(w).height/2})}},4577:(M,z,p)=>{var b=p(8355),u=p(4322),_=p(1034);M.exports=function(y,E){function A(w){var F=E.edge(w);return _.has(F,"x")?"translate("+F.x+","+F.y+")":""}y.filter(function(){return!u.select(this).classed("update")}).attr("transform",A),b.applyTransition(y,E).style("opacity",1).attr("transform",A)}},4849:(M,z,p)=>{var b=p(8355),u=p(4322);M.exports=function(_,y){function E(A){var w=y.node(A);return"translate("+w.x+","+w.y+")"}_.filter(function(){return!u.select(this).classed("update")}).attr("transform",E),b.applyTransition(_,y).style("opacity",1).attr("transform",E)}},5787:(M,z,p)=>{var b=p(1034),u=p(4322),_=p(6478).layout;M.exports=function(){var w=p(607),F=p(5632),B=p(6315),P=p(940),G=p(4849),K=p(4577),J=p(6381),ht=p(4418),tt=p(9144),kt=function(at,ut){(function(mt){mt.nodes().forEach(function(X){var ot=mt.node(X);b.has(ot,"label")||mt.children(X).length||(ot.label=X),b.has(ot,"paddingX")&&b.defaults(ot,{paddingLeft:ot.paddingX,paddingRight:ot.paddingX}),b.has(ot,"paddingY")&&b.defaults(ot,{paddingTop:ot.paddingY,paddingBottom:ot.paddingY}),b.has(ot,"padding")&&b.defaults(ot,{paddingLeft:ot.padding,paddingRight:ot.padding,paddingTop:ot.padding,paddingBottom:ot.padding}),b.defaults(ot,y),b.each(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(j){ot[j]=Number(ot[j])}),b.has(ot,"width")&&(ot._prevWidth=ot.width),b.has(ot,"height")&&(ot._prevHeight=ot.height)}),mt.edges().forEach(function(X){var ot=mt.edge(X);b.has(ot,"label")||(ot.label=""),b.defaults(ot,E)})})(ut);var vt=A(at,"output"),Zt=A(vt,"clusters"),Gt=A(vt,"edgePaths"),xt=B(A(vt,"edgeLabels"),ut),It=w(A(vt,"nodes"),ut,ht);_(ut),G(It,ut),K(xt,ut),P(Gt,ut,tt);var wt=F(Zt,ut);J(wt,ut),function(mt){b.each(mt.nodes(),function(X){var ot=mt.node(X);b.has(ot,"_prevWidth")?ot.width=ot._prevWidth:delete ot.width,b.has(ot,"_prevHeight")?ot.height=ot._prevHeight:delete ot.height,delete ot._prevWidth,delete ot._prevHeight})}(ut)};return kt.createNodes=function(at){return arguments.length?(w=at,kt):w},kt.createClusters=function(at){return arguments.length?(F=at,kt):F},kt.createEdgeLabels=function(at){return arguments.length?(B=at,kt):B},kt.createEdgePaths=function(at){return arguments.length?(P=at,kt):P},kt.shapes=function(at){return arguments.length?(ht=at,kt):ht},kt.arrows=function(at){return arguments.length?(tt=at,kt):tt},kt};var y={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},E={arrowhead:"normal",curve:u.curveLinear};function A(w,F){var B=w.select("g."+F);return B.empty()&&(B=w.append("g").attr("class",F)),B}},4418:(M,z,p)=>{var b=p(8049),u=p(3260),_=p(6587),y=p(5337);M.exports={rect:function(E,A,w){var F=E.insert("rect",":first-child").attr("rx",w.rx).attr("ry",w.ry).attr("x",-A.width/2).attr("y",-A.height/2).attr("width",A.width).attr("height",A.height);return w.intersect=function(B){return b(w,B)},F},ellipse:function(E,A,w){var F=A.width/2,B=A.height/2,P=E.insert("ellipse",":first-child").attr("x",-A.width/2).attr("y",-A.height/2).attr("rx",F).attr("ry",B);return w.intersect=function(G){return u(w,F,B,G)},P},circle:function(E,A,w){var F=Math.max(A.width,A.height)/2,B=E.insert("circle",":first-child").attr("x",-A.width/2).attr("y",-A.height/2).attr("r",F);return w.intersect=function(P){return _(w,F,P)},B},diamond:function(E,A,w){var F=A.width*Math.SQRT2/2,B=A.height*Math.SQRT2/2,P=[{x:0,y:-B},{x:-F,y:0},{x:0,y:B},{x:F,y:0}],G=E.insert("polygon",":first-child").attr("points",P.map(function(K){return K.x+","+K.y}).join(" "));return w.intersect=function(K){return y(w,P,K)},G}}},8355:(M,z,p)=>{var b=p(1034);M.exports={isSubgraph:function(y,E){return!!y.children(E).length},edgeToId:function(y){return _(y.v)+":"+_(y.w)+":"+_(y.name)},applyStyle:function(y,E){E&&y.attr("style",E)},applyClass:function(y,E,A){E&&y.attr("class",E).attr("class",A+" "+y.attr("class"))},applyTransition:function(y,E){var A=E.graph();if(b.isPlainObject(A)){var w=A.transition;if(b.isFunction(w))return w(y)}return y}};var u=/:/g;function _(y){return y?String(y).replace(u,"\\:"):""}},5689:M=>{M.exports="0.6.4"},681:(M,z,p)=>{M.exports={graphlib:p(574),layout:p(8123),debug:p(7570),util:{time:p(1138).time,notime:p(1138).notime},version:p(8177)}},2188:(M,z,p)=>{var b=p(8436),u=p(4079);M.exports={run:function(_){var y=_.graph().acyclicer==="greedy"?u(_,function(E){return function(A){return E.edge(A).weight}}(_)):function(E){var A=[],w={},F={};return b.forEach(E.nodes(),function B(P){b.has(F,P)||(F[P]=!0,w[P]=!0,b.forEach(E.outEdges(P),function(G){b.has(w,G.w)?A.push(G):B(G.w)}),delete w[P])}),A}(_);b.forEach(y,function(E){var A=_.edge(E);_.removeEdge(E),A.forwardName=E.name,A.reversed=!0,_.setEdge(E.w,E.v,A,b.uniqueId("rev"))})},undo:function(_){b.forEach(_.edges(),function(y){var E=_.edge(y);if(E.reversed){_.removeEdge(y);var A=E.forwardName;delete E.reversed,delete E.forwardName,_.setEdge(y.w,y.v,E,A)}})}}},1133:(M,z,p)=>{var b=p(8436),u=p(1138);function _(y,E,A,w,F,B){var P={width:0,height:0,rank:B,borderType:E},G=F[E][B-1],K=u.addDummyNode(y,"border",P,A);F[E][B]=K,y.setParent(K,w),G&&y.setEdge(G,K,{weight:1})}M.exports=function(y){b.forEach(y.children(),function E(A){var w=y.children(A),F=y.node(A);if(w.length&&b.forEach(w,E),b.has(F,"minRank")){F.borderLeft=[],F.borderRight=[];for(var B=F.minRank,P=F.maxRank+1;B{var b=p(8436);function u(A){b.forEach(A.nodes(),function(w){_(A.node(w))}),b.forEach(A.edges(),function(w){_(A.edge(w))})}function _(A){var w=A.width;A.width=A.height,A.height=w}function y(A){A.y=-A.y}function E(A){var w=A.x;A.x=A.y,A.y=w}M.exports={adjust:function(A){var w=A.graph().rankdir.toLowerCase();w!=="lr"&&w!=="rl"||u(A)},undo:function(A){var w=A.graph().rankdir.toLowerCase();w!=="bt"&&w!=="rl"||function(F){b.forEach(F.nodes(),function(B){y(F.node(B))}),b.forEach(F.edges(),function(B){var P=F.edge(B);b.forEach(P.points,y),b.has(P,"y")&&y(P)})}(A),w!=="lr"&&w!=="rl"||(function(F){b.forEach(F.nodes(),function(B){E(F.node(B))}),b.forEach(F.edges(),function(B){var P=F.edge(B);b.forEach(P.points,E),b.has(P,"x")&&E(P)})}(A),u(A))}}},7822:M=>{function z(){var u={};u._next=u._prev=u,this._sentinel=u}function p(u){u._prev._next=u._next,u._next._prev=u._prev,delete u._next,delete u._prev}function b(u,_){if(u!=="_next"&&u!=="_prev")return _}M.exports=z,z.prototype.dequeue=function(){var u=this._sentinel,_=u._prev;if(_!==u)return p(_),_},z.prototype.enqueue=function(u){var _=this._sentinel;u._prev&&u._next&&p(u),u._next=_._next,_._next._prev=u,_._next=u,u._prev=_},z.prototype.toString=function(){for(var u=[],_=this._sentinel,y=_._prev;y!==_;)u.push(JSON.stringify(y,b)),y=y._prev;return"["+u.join(", ")+"]"}},7570:(M,z,p)=>{var b=p(8436),u=p(1138),_=p(574).Graph;M.exports={debugOrdering:function(y){var E=u.buildLayerMatrix(y),A=new _({compound:!0,multigraph:!0}).setGraph({});return b.forEach(y.nodes(),function(w){A.setNode(w,{label:w}),A.setParent(w,"layer"+y.node(w).rank)}),b.forEach(y.edges(),function(w){A.setEdge(w.v,w.w,{},w.name)}),b.forEach(E,function(w,F){var B="layer"+F;A.setNode(B,{rank:"same"}),b.reduce(w,function(P,G){return A.setEdge(P,G,{style:"invis"}),G})}),A}}},574:(M,z,p)=>{var b;try{b=p(8282)}catch{}b||(b=window.graphlib),M.exports=b},4079:(M,z,p)=>{var b=p(8436),u=p(574).Graph,_=p(7822);M.exports=function(w,F){if(w.nodeCount()<=1)return[];var B=function(G,K){var J=new u,ht=0,tt=0;b.forEach(G.nodes(),function(ut){J.setNode(ut,{v:ut,in:0,out:0})}),b.forEach(G.edges(),function(ut){var vt=J.edge(ut.v,ut.w)||0,Zt=K(ut),Gt=vt+Zt;J.setEdge(ut.v,ut.w,Gt),tt=Math.max(tt,J.node(ut.v).out+=Zt),ht=Math.max(ht,J.node(ut.w).in+=Zt)});var kt=b.range(tt+ht+3).map(function(){return new _}),at=ht+1;return b.forEach(J.nodes(),function(ut){A(kt,at,J.node(ut))}),{graph:J,buckets:kt,zeroIdx:at}}(w,F||y),P=function(G,K,J){for(var ht,tt=[],kt=K[K.length-1],at=K[0];G.nodeCount();){for(;ht=at.dequeue();)E(G,K,J,ht);for(;ht=kt.dequeue();)E(G,K,J,ht);if(G.nodeCount()){for(var ut=K.length-2;ut>0;--ut)if(ht=K[ut].dequeue()){tt=tt.concat(E(G,K,J,ht,!0));break}}}return tt}(B.graph,B.buckets,B.zeroIdx);return b.flatten(b.map(P,function(G){return w.outEdges(G.v,G.w)}),!0)};var y=b.constant(1);function E(w,F,B,P,G){var K=G?[]:void 0;return b.forEach(w.inEdges(P.v),function(J){var ht=w.edge(J),tt=w.node(J.v);G&&K.push({v:J.v,w:J.w}),tt.out-=ht,A(F,B,tt)}),b.forEach(w.outEdges(P.v),function(J){var ht=w.edge(J),tt=J.w,kt=w.node(tt);kt.in-=ht,A(F,B,kt)}),w.removeNode(P.v),K}function A(w,F,B){B.out?B.in?w[B.out-B.in+F].enqueue(B):w[w.length-1].enqueue(B):w[0].enqueue(B)}},8123:(M,z,p)=>{var b=p(8436),u=p(2188),_=p(5995),y=p(8093),E=p(1138).normalizeRanks,A=p(4219),w=p(1138).removeEmptyRanks,F=p(2981),B=p(1133),P=p(3258),G=p(3408),K=p(7873),J=p(1138),ht=p(574).Graph;M.exports=function(mt,X){var ot=X&&X.debugTiming?J.time:J.notime;ot("layout",function(){var j=ot(" buildLayoutGraph",function(){return function(yt){var Y=new ht({multigraph:!0,compound:!0}),bt=wt(yt.graph());return Y.setGraph(b.merge({},kt,It(bt,tt),b.pick(bt,at))),b.forEach(yt.nodes(),function(Ct){var $t=wt(yt.node(Ct));Y.setNode(Ct,b.defaults(It($t,ut),vt)),Y.setParent(Ct,yt.parent(Ct))}),b.forEach(yt.edges(),function(Ct){var $t=wt(yt.edge(Ct));Y.setEdge(Ct,b.merge({},Gt,It($t,Zt),b.pick($t,xt)))}),Y}(mt)});ot(" runLayout",function(){(function(yt,Y){Y(" makeSpaceForEdgeLabels",function(){(function(bt){var Ct=bt.graph();Ct.ranksep/=2,b.forEach(bt.edges(),function($t){var be=bt.edge($t);be.minlen*=2,be.labelpos.toLowerCase()!=="c"&&(Ct.rankdir==="TB"||Ct.rankdir==="BT"?be.width+=be.labeloffset:be.height+=be.labeloffset)})})(yt)}),Y(" removeSelfEdges",function(){(function(bt){b.forEach(bt.edges(),function(Ct){if(Ct.v===Ct.w){var $t=bt.node(Ct.v);$t.selfEdges||($t.selfEdges=[]),$t.selfEdges.push({e:Ct,label:bt.edge(Ct)}),bt.removeEdge(Ct)}})})(yt)}),Y(" acyclic",function(){u.run(yt)}),Y(" nestingGraph.run",function(){F.run(yt)}),Y(" rank",function(){y(J.asNonCompoundGraph(yt))}),Y(" injectEdgeLabelProxies",function(){(function(bt){b.forEach(bt.edges(),function(Ct){var $t=bt.edge(Ct);if($t.width&&$t.height){var be=bt.node(Ct.v),We={rank:(bt.node(Ct.w).rank-be.rank)/2+be.rank,e:Ct};J.addDummyNode(bt,"edge-proxy",We,"_ep")}})})(yt)}),Y(" removeEmptyRanks",function(){w(yt)}),Y(" nestingGraph.cleanup",function(){F.cleanup(yt)}),Y(" normalizeRanks",function(){E(yt)}),Y(" assignRankMinMax",function(){(function(bt){var Ct=0;b.forEach(bt.nodes(),function($t){var be=bt.node($t);be.borderTop&&(be.minRank=bt.node(be.borderTop).rank,be.maxRank=bt.node(be.borderBottom).rank,Ct=b.max(Ct,be.maxRank))}),bt.graph().maxRank=Ct})(yt)}),Y(" removeEdgeLabelProxies",function(){(function(bt){b.forEach(bt.nodes(),function(Ct){var $t=bt.node(Ct);$t.dummy==="edge-proxy"&&(bt.edge($t.e).labelRank=$t.rank,bt.removeNode(Ct))})})(yt)}),Y(" normalize.run",function(){_.run(yt)}),Y(" parentDummyChains",function(){A(yt)}),Y(" addBorderSegments",function(){B(yt)}),Y(" order",function(){G(yt)}),Y(" insertSelfEdges",function(){(function(bt){var Ct=J.buildLayerMatrix(bt);b.forEach(Ct,function($t){var be=0;b.forEach($t,function(We,xe){var pe=bt.node(We);pe.order=xe+be,b.forEach(pe.selfEdges,function(_e){J.addDummyNode(bt,"selfedge",{width:_e.label.width,height:_e.label.height,rank:pe.rank,order:xe+ ++be,e:_e.e,label:_e.label},"_se")}),delete pe.selfEdges})})})(yt)}),Y(" adjustCoordinateSystem",function(){P.adjust(yt)}),Y(" position",function(){K(yt)}),Y(" positionSelfEdges",function(){(function(bt){b.forEach(bt.nodes(),function(Ct){var $t=bt.node(Ct);if($t.dummy==="selfedge"){var be=bt.node($t.e.v),We=be.x+be.width/2,xe=be.y,pe=$t.x-We,_e=be.height/2;bt.setEdge($t.e,$t.label),bt.removeNode(Ct),$t.label.points=[{x:We+2*pe/3,y:xe-_e},{x:We+5*pe/6,y:xe-_e},{x:We+pe,y:xe},{x:We+5*pe/6,y:xe+_e},{x:We+2*pe/3,y:xe+_e}],$t.label.x=$t.x,$t.label.y=$t.y}})})(yt)}),Y(" removeBorderNodes",function(){(function(bt){b.forEach(bt.nodes(),function(Ct){if(bt.children(Ct).length){var $t=bt.node(Ct),be=bt.node($t.borderTop),We=bt.node($t.borderBottom),xe=bt.node(b.last($t.borderLeft)),pe=bt.node(b.last($t.borderRight));$t.width=Math.abs(pe.x-xe.x),$t.height=Math.abs(We.y-be.y),$t.x=xe.x+$t.width/2,$t.y=be.y+$t.height/2}}),b.forEach(bt.nodes(),function(Ct){bt.node(Ct).dummy==="border"&&bt.removeNode(Ct)})})(yt)}),Y(" normalize.undo",function(){_.undo(yt)}),Y(" fixupEdgeLabelCoords",function(){(function(bt){b.forEach(bt.edges(),function(Ct){var $t=bt.edge(Ct);if(b.has($t,"x"))switch($t.labelpos!=="l"&&$t.labelpos!=="r"||($t.width-=$t.labeloffset),$t.labelpos){case"l":$t.x-=$t.width/2+$t.labeloffset;break;case"r":$t.x+=$t.width/2+$t.labeloffset}})})(yt)}),Y(" undoCoordinateSystem",function(){P.undo(yt)}),Y(" translateGraph",function(){(function(bt){var Ct=Number.POSITIVE_INFINITY,$t=0,be=Number.POSITIVE_INFINITY,We=0,xe=bt.graph(),pe=xe.marginx||0,_e=xe.marginy||0;function Ae(De){var me=De.x,wn=De.y,de=De.width,Qe=De.height;Ct=Math.min(Ct,me-de/2),$t=Math.max($t,me+de/2),be=Math.min(be,wn-Qe/2),We=Math.max(We,wn+Qe/2)}b.forEach(bt.nodes(),function(De){Ae(bt.node(De))}),b.forEach(bt.edges(),function(De){var me=bt.edge(De);b.has(me,"x")&&Ae(me)}),Ct-=pe,be-=_e,b.forEach(bt.nodes(),function(De){var me=bt.node(De);me.x-=Ct,me.y-=be}),b.forEach(bt.edges(),function(De){var me=bt.edge(De);b.forEach(me.points,function(wn){wn.x-=Ct,wn.y-=be}),b.has(me,"x")&&(me.x-=Ct),b.has(me,"y")&&(me.y-=be)}),xe.width=$t-Ct+pe,xe.height=We-be+_e})(yt)}),Y(" assignNodeIntersects",function(){(function(bt){b.forEach(bt.edges(),function(Ct){var $t,be,We=bt.edge(Ct),xe=bt.node(Ct.v),pe=bt.node(Ct.w);We.points?($t=We.points[0],be=We.points[We.points.length-1]):(We.points=[],$t=pe,be=xe),We.points.unshift(J.intersectRect(xe,$t)),We.points.push(J.intersectRect(pe,be))})})(yt)}),Y(" reversePoints",function(){(function(bt){b.forEach(bt.edges(),function(Ct){var $t=bt.edge(Ct);$t.reversed&&$t.points.reverse()})})(yt)}),Y(" acyclic.undo",function(){u.undo(yt)})})(j,ot)}),ot(" updateInputGraph",function(){(function(yt,Y){b.forEach(yt.nodes(),function(bt){var Ct=yt.node(bt),$t=Y.node(bt);Ct&&(Ct.x=$t.x,Ct.y=$t.y,Y.children(bt).length&&(Ct.width=$t.width,Ct.height=$t.height))}),b.forEach(yt.edges(),function(bt){var Ct=yt.edge(bt),$t=Y.edge(bt);Ct.points=$t.points,b.has($t,"x")&&(Ct.x=$t.x,Ct.y=$t.y)}),yt.graph().width=Y.graph().width,yt.graph().height=Y.graph().height})(mt,j)})})};var tt=["nodesep","edgesep","ranksep","marginx","marginy"],kt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},at=["acyclicer","ranker","rankdir","align"],ut=["width","height"],vt={width:0,height:0},Zt=["minlen","weight","width","height","labeloffset"],Gt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},xt=["labelpos"];function It(mt,X){return b.mapValues(b.pick(mt,X),Number)}function wt(mt){var X={};return b.forEach(mt,function(ot,j){X[j.toLowerCase()]=ot}),X}},8436:(M,z,p)=>{var b;try{b={cloneDeep:p(361),constant:p(5703),defaults:p(1747),each:p(6073),filter:p(3105),find:p(3311),flatten:p(5564),forEach:p(4486),forIn:p(2620),has:p(8721),isUndefined:p(2353),last:p(928),map:p(5161),mapValues:p(6604),max:p(6162),merge:p(3857),min:p(3632),minBy:p(2762),now:p(7771),pick:p(9722),range:p(6026),reduce:p(4061),sortBy:p(9734),uniqueId:p(3955),values:p(2628),zipObject:p(7287)}}catch{}b||(b=window._),M.exports=b},2981:(M,z,p)=>{var b=p(8436),u=p(1138);function _(y,E,A,w,F,B,P){var G=y.children(P);if(G.length){var K=u.addBorderNode(y,"_bt"),J=u.addBorderNode(y,"_bb"),ht=y.node(P);y.setParent(K,P),ht.borderTop=K,y.setParent(J,P),ht.borderBottom=J,b.forEach(G,function(tt){_(y,E,A,w,F,B,tt);var kt=y.node(tt),at=kt.borderTop?kt.borderTop:tt,ut=kt.borderBottom?kt.borderBottom:tt,vt=kt.borderTop?w:2*w,Zt=at!==ut?1:F-B[P]+1;y.setEdge(K,at,{weight:vt,minlen:Zt,nestingEdge:!0}),y.setEdge(ut,J,{weight:vt,minlen:Zt,nestingEdge:!0})}),y.parent(P)||y.setEdge(E,K,{weight:0,minlen:F+B[P]})}else P!==E&&y.setEdge(E,P,{weight:0,minlen:A})}M.exports={run:function(y){var E=u.addDummyNode(y,"root",{},"_root"),A=function(P){var G={};function K(J,ht){var tt=P.children(J);tt&&tt.length&&b.forEach(tt,function(kt){K(kt,ht+1)}),G[J]=ht}return b.forEach(P.children(),function(J){K(J,1)}),G}(y),w=b.max(b.values(A))-1,F=2*w+1;y.graph().nestingRoot=E,b.forEach(y.edges(),function(P){y.edge(P).minlen*=F});var B=function(P){return b.reduce(P.edges(),function(G,K){return G+P.edge(K).weight},0)}(y)+1;b.forEach(y.children(),function(P){_(y,E,F,B,w,A,P)}),y.graph().nodeRankFactor=F},cleanup:function(y){var E=y.graph();y.removeNode(E.nestingRoot),delete E.nestingRoot,b.forEach(y.edges(),function(A){y.edge(A).nestingEdge&&y.removeEdge(A)})}}},5995:(M,z,p)=>{var b=p(8436),u=p(1138);M.exports={run:function(_){_.graph().dummyChains=[],b.forEach(_.edges(),function(y){(function(E,A){var w,F,B,P=A.v,G=E.node(P).rank,K=A.w,J=E.node(K).rank,ht=A.name,tt=E.edge(A),kt=tt.labelRank;if(J!==G+1){for(E.removeEdge(A),B=0,++G;G{var b=p(8436);M.exports=function(u,_,y){var E,A={};b.forEach(y,function(w){for(var F,B,P=u.parent(w);P;){if((F=u.parent(P))?(B=A[F],A[F]=P):(B=E,E=P),B&&B!==P)return void _.setEdge(B,P);P=F}})}},5439:(M,z,p)=>{var b=p(8436);M.exports=function(u,_){return b.map(_,function(y){var E=u.inEdges(y);if(E.length){var A=b.reduce(E,function(w,F){var B=u.edge(F),P=u.node(F.v);return{sum:w.sum+B.weight*P.order,weight:w.weight+B.weight}},{sum:0,weight:0});return{v:y,barycenter:A.sum/A.weight,weight:A.weight}}return{v:y}})}},3128:(M,z,p)=>{var b=p(8436),u=p(574).Graph;M.exports=function(_,y,E){var A=function(F){for(var B;F.hasNode(B=b.uniqueId("_root")););return B}(_),w=new u({compound:!0}).setGraph({root:A}).setDefaultNodeLabel(function(F){return _.node(F)});return b.forEach(_.nodes(),function(F){var B=_.node(F),P=_.parent(F);(B.rank===y||B.minRank<=y&&y<=B.maxRank)&&(w.setNode(F),w.setParent(F,P||A),b.forEach(_[E](F),function(G){var K=G.v===F?G.w:G.v,J=w.edge(K,F),ht=b.isUndefined(J)?0:J.weight;w.setEdge(K,F,{weight:_.edge(G).weight+ht})}),b.has(B,"minRank")&&w.setNode(F,{borderLeft:B.borderLeft[y],borderRight:B.borderRight[y]}))}),w}},6630:(M,z,p)=>{var b=p(8436);function u(_,y,E){for(var A=b.zipObject(E,b.map(E,function(K,J){return J})),w=b.flatten(b.map(y,function(K){return b.sortBy(b.map(_.outEdges(K),function(J){return{pos:A[J.w],weight:_.edge(J).weight}}),"pos")}),!0),F=1;F0;)J%2&&(ht+=P[J+1]),P[J=J-1>>1]+=K.weight;G+=K.weight*ht})),G}M.exports=function(_,y){for(var E=0,A=1;A{var b=p(8436),u=p(2588),_=p(6630),y=p(1026),E=p(3128),A=p(5093),w=p(574).Graph,F=p(1138);function B(K,J,ht){return b.map(J,function(tt){return E(K,tt,ht)})}function P(K,J){var ht=new w;b.forEach(K,function(tt){var kt=tt.graph().root,at=y(tt,kt,ht,J);b.forEach(at.vs,function(ut,vt){tt.node(ut).order=vt}),A(tt,ht,at.vs)})}function G(K,J){b.forEach(J,function(ht){b.forEach(ht,function(tt,kt){K.node(tt).order=kt})})}M.exports=function(K){var J=F.maxRank(K),ht=B(K,b.range(1,J+1),"inEdges"),tt=B(K,b.range(J-1,-1,-1),"outEdges"),kt=u(K);G(K,kt);for(var at,ut=Number.POSITIVE_INFINITY,vt=0,Zt=0;Zt<4;++vt,++Zt){P(vt%2?ht:tt,vt%4>=2),kt=F.buildLayerMatrix(K);var Gt=_(K,kt);Gt{var b=p(8436);M.exports=function(u){var _={},y=b.filter(u.nodes(),function(F){return!u.children(F).length}),E=b.max(b.map(y,function(F){return u.node(F).rank})),A=b.map(b.range(E+1),function(){return[]}),w=b.sortBy(y,function(F){return u.node(F).rank});return b.forEach(w,function F(B){if(!b.has(_,B)){_[B]=!0;var P=u.node(B);A[P.rank].push(B),b.forEach(u.successors(B),F)}}),A}},9567:(M,z,p)=>{var b=p(8436);M.exports=function(u,_){var y={};return b.forEach(u,function(E,A){var w=y[E.v]={indegree:0,in:[],out:[],vs:[E.v],i:A};b.isUndefined(E.barycenter)||(w.barycenter=E.barycenter,w.weight=E.weight)}),b.forEach(_.edges(),function(E){var A=y[E.v],w=y[E.w];b.isUndefined(A)||b.isUndefined(w)||(w.indegree++,A.out.push(y[E.w]))}),function(E){var A=[];function w(P){return function(G){var K,J,ht,tt;G.merged||(b.isUndefined(G.barycenter)||b.isUndefined(P.barycenter)||G.barycenter>=P.barycenter)&&(J=G,ht=0,tt=0,(K=P).weight&&(ht+=K.barycenter*K.weight,tt+=K.weight),J.weight&&(ht+=J.barycenter*J.weight,tt+=J.weight),K.vs=J.vs.concat(K.vs),K.barycenter=ht/tt,K.weight=tt,K.i=Math.min(J.i,K.i),J.merged=!0)}}function F(P){return function(G){G.in.push(P),--G.indegree==0&&E.push(G)}}for(;E.length;){var B=E.pop();A.push(B),b.forEach(B.in.reverse(),w(B)),b.forEach(B.out,F(B))}return b.map(b.filter(A,function(P){return!P.merged}),function(P){return b.pick(P,["vs","i","barycenter","weight"])})}(b.filter(y,function(E){return!E.indegree}))}},1026:(M,z,p)=>{var b=p(8436),u=p(5439),_=p(9567),y=p(7304);M.exports=function E(A,w,F,B){var P=A.children(w),G=A.node(w),K=G?G.borderLeft:void 0,J=G?G.borderRight:void 0,ht={};K&&(P=b.filter(P,function(Zt){return Zt!==K&&Zt!==J}));var tt=u(A,P);b.forEach(tt,function(Zt){if(A.children(Zt.v).length){var Gt=E(A,Zt.v,F,B);ht[Zt.v]=Gt,b.has(Gt,"barycenter")&&(xt=Zt,It=Gt,b.isUndefined(xt.barycenter)?(xt.barycenter=It.barycenter,xt.weight=It.weight):(xt.barycenter=(xt.barycenter*xt.weight+It.barycenter*It.weight)/(xt.weight+It.weight),xt.weight+=It.weight))}var xt,It});var kt=_(tt,F);(function(Zt,Gt){b.forEach(Zt,function(xt){xt.vs=b.flatten(xt.vs.map(function(It){return Gt[It]?Gt[It].vs:It}),!0)})})(kt,ht);var at=y(kt,B);if(K&&(at.vs=b.flatten([K,at.vs,J],!0),A.predecessors(K).length)){var ut=A.node(A.predecessors(K)[0]),vt=A.node(A.predecessors(J)[0]);b.has(at,"barycenter")||(at.barycenter=0,at.weight=0),at.barycenter=(at.barycenter*at.weight+ut.order+vt.order)/(at.weight+2),at.weight+=2}return at}},7304:(M,z,p)=>{var b=p(8436),u=p(1138);function _(y,E,A){for(var w;E.length&&(w=b.last(E)).i<=A;)E.pop(),y.push(w.vs),A++;return A}M.exports=function(y,E){var A,w=u.partition(y,function(tt){return b.has(tt,"barycenter")}),F=w.lhs,B=b.sortBy(w.rhs,function(tt){return-tt.i}),P=[],G=0,K=0,J=0;F.sort((A=!!E,function(tt,kt){return tt.barycenterkt.barycenter?1:A?kt.i-tt.i:tt.i-kt.i})),J=_(P,B,J),b.forEach(F,function(tt){J+=tt.vs.length,P.push(tt.vs),G+=tt.barycenter*tt.weight,K+=tt.weight,J=_(P,B,J)});var ht={vs:b.flatten(P,!0)};return K&&(ht.barycenter=G/K,ht.weight=K),ht}},4219:(M,z,p)=>{var b=p(8436);M.exports=function(u){var _=function(y){var E={},A=0;return b.forEach(y.children(),function w(F){var B=A;b.forEach(y.children(F),w),E[F]={low:B,lim:A++}}),E}(u);b.forEach(u.graph().dummyChains,function(y){for(var E=u.node(y),A=E.edgeObj,w=function(J,ht,tt,kt){var at,ut,vt=[],Zt=[],Gt=Math.min(ht[tt].low,ht[kt].low),xt=Math.max(ht[tt].lim,ht[kt].lim);at=tt;do at=J.parent(at),vt.push(at);while(at&&(ht[at].low>Gt||xt>ht[at].lim));for(ut=at,at=kt;(at=J.parent(at))!==ut;)Zt.push(at);return{path:vt.concat(Zt.reverse()),lca:ut}}(u,_,A.v,A.w),F=w.path,B=w.lca,P=0,G=F[P],K=!0;y!==A.w;){if(E=u.node(y),K){for(;(G=F[P])!==B&&u.node(G).maxRank{var b=p(8436),u=p(574).Graph,_=p(1138);function y(J,ht){var tt={};return b.reduce(ht,function(kt,at){var ut=0,vt=0,Zt=kt.length,Gt=b.last(at);return b.forEach(at,function(xt,It){var wt=function(X,ot){if(X.node(ot).dummy)return b.find(X.predecessors(ot),function(j){return X.node(j).dummy})}(J,xt),mt=wt?J.node(wt).order:Zt;(wt||xt===Gt)&&(b.forEach(at.slice(vt,It+1),function(X){b.forEach(J.predecessors(X),function(ot){var j=J.node(ot),yt=j.order;!(ytGt)&&A(tt,wt,xt)})})}return b.reduce(ht,function(at,ut){var vt,Zt=-1,Gt=0;return b.forEach(ut,function(xt,It){if(J.node(xt).dummy==="border"){var wt=J.predecessors(xt);wt.length&&(vt=J.node(wt[0]).order,kt(ut,Gt,It,Zt,vt),Gt=It,Zt=vt)}kt(ut,Gt,ut.length,vt,at.length)}),ut}),tt}function A(J,ht,tt){if(ht>tt){var kt=ht;ht=tt,tt=kt}var at=J[ht];at||(J[ht]=at={}),at[tt]=!0}function w(J,ht,tt){if(ht>tt){var kt=ht;ht=tt,tt=kt}return b.has(J[ht],tt)}function F(J,ht,tt,kt){var at={},ut={},vt={};return b.forEach(ht,function(Zt){b.forEach(Zt,function(Gt,xt){at[Gt]=Gt,ut[Gt]=Gt,vt[Gt]=xt})}),b.forEach(ht,function(Zt){var Gt=-1;b.forEach(Zt,function(xt){var It=kt(xt);if(It.length){It=b.sortBy(It,function(j){return vt[j]});for(var wt=(It.length-1)/2,mt=Math.floor(wt),X=Math.ceil(wt);mt<=X;++mt){var ot=It[mt];ut[xt]===xt&&Gt{var b=p(8436),u=p(1138),_=p(3573).positionX;M.exports=function(y){(function(E){var A=u.buildLayerMatrix(E),w=E.graph().ranksep,F=0;b.forEach(A,function(B){var P=b.max(b.map(B,function(G){return E.node(G).height}));b.forEach(B,function(G){E.node(G).y=F+P/2}),F+=P+w})})(y=u.asNonCompoundGraph(y)),b.forEach(_(y),function(E,A){y.node(A).x=E})}},300:(M,z,p)=>{var b=p(8436),u=p(574).Graph,_=p(6681).slack;function y(w,F){return b.forEach(w.nodes(),function B(P){b.forEach(F.nodeEdges(P),function(G){var K=G.v,J=P===K?G.w:K;w.hasNode(J)||_(F,G)||(w.setNode(J,{}),w.setEdge(P,J,{}),B(J))})}),w.nodeCount()}function E(w,F){return b.minBy(F.edges(),function(B){if(w.hasNode(B.v)!==w.hasNode(B.w))return _(F,B)})}function A(w,F,B){b.forEach(w.nodes(),function(P){F.node(P).rank+=B})}M.exports=function(w){var F,B,P=new u({directed:!1}),G=w.nodes()[0],K=w.nodeCount();for(P.setNode(G,{});y(P,w){var b=p(6681).longestPath,u=p(300),_=p(2472);M.exports=function(E){switch(E.graph().ranker){case"network-simplex":default:(function(A){_(A)})(E);break;case"tight-tree":(function(A){b(A),u(A)})(E);break;case"longest-path":y(E)}};var y=b},2472:(M,z,p)=>{var b=p(8436),u=p(300),_=p(6681).slack,y=p(6681).longestPath,E=p(574).alg.preorder,A=p(574).alg.postorder,w=p(1138).simplify;function F(at){at=w(at),y(at);var ut,vt=u(at);for(G(vt),B(vt,at);ut=J(vt);)tt(vt,at,ut,ht(vt,at,ut))}function B(at,ut){var vt=A(at,at.nodes());vt=vt.slice(0,vt.length-1),b.forEach(vt,function(Zt){(function(Gt,xt,It){var wt=Gt.node(It).parent;Gt.edge(It,wt).cutvalue=P(Gt,xt,It)})(at,ut,Zt)})}function P(at,ut,vt){var Zt=at.node(vt).parent,Gt=!0,xt=ut.edge(vt,Zt),It=0;return xt||(Gt=!1,xt=ut.edge(Zt,vt)),It=xt.weight,b.forEach(ut.nodeEdges(vt),function(wt){var mt,X,ot=wt.v===vt,j=ot?wt.w:wt.v;if(j!==Zt){var yt=ot===Gt,Y=ut.edge(wt).weight;if(It+=yt?Y:-Y,mt=vt,X=j,at.hasEdge(mt,X)){var bt=at.edge(vt,j).cutvalue;It+=yt?-bt:bt}}}),It}function G(at,ut){arguments.length<2&&(ut=at.nodes()[0]),K(at,{},1,ut)}function K(at,ut,vt,Zt,Gt){var xt=vt,It=at.node(Zt);return ut[Zt]=!0,b.forEach(at.neighbors(Zt),function(wt){b.has(ut,wt)||(vt=K(at,ut,vt,wt,Zt))}),It.low=xt,It.lim=vt++,Gt?It.parent=Gt:delete It.parent,vt}function J(at){return b.find(at.edges(),function(ut){return at.edge(ut).cutvalue<0})}function ht(at,ut,vt){var Zt=vt.v,Gt=vt.w;ut.hasEdge(Zt,Gt)||(Zt=vt.w,Gt=vt.v);var xt=at.node(Zt),It=at.node(Gt),wt=xt,mt=!1;xt.lim>It.lim&&(wt=It,mt=!0);var X=b.filter(ut.edges(),function(ot){return mt===kt(0,at.node(ot.v),wt)&&mt!==kt(0,at.node(ot.w),wt)});return b.minBy(X,function(ot){return _(ut,ot)})}function tt(at,ut,vt,Zt){var Gt=vt.v,xt=vt.w;at.removeEdge(Gt,xt),at.setEdge(Zt.v,Zt.w,{}),G(at),B(at,ut),function(It,wt){var mt=b.find(It.nodes(),function(ot){return!wt.node(ot).parent}),X=E(It,mt);X=X.slice(1),b.forEach(X,function(ot){var j=It.node(ot).parent,yt=wt.edge(ot,j),Y=!1;yt||(yt=wt.edge(j,ot),Y=!0),wt.node(ot).rank=wt.node(j).rank+(Y?yt.minlen:-yt.minlen)})}(at,ut)}function kt(at,ut,vt){return vt.low<=ut.lim&&ut.lim<=vt.lim}M.exports=F,F.initLowLimValues=G,F.initCutValues=B,F.calcCutValue=P,F.leaveEdge=J,F.enterEdge=ht,F.exchangeEdges=tt},6681:(M,z,p)=>{var b=p(8436);M.exports={longestPath:function(u){var _={};b.forEach(u.sources(),function y(E){var A=u.node(E);if(b.has(_,E))return A.rank;_[E]=!0;var w=b.min(b.map(u.outEdges(E),function(F){return y(F.w)-u.edge(F).minlen}));return w!==Number.POSITIVE_INFINITY&&w!=null||(w=0),A.rank=w})},slack:function(u,_){return u.node(_.w).rank-u.node(_.v).rank-u.edge(_).minlen}}},1138:(M,z,p)=>{var b=p(8436),u=p(574).Graph;function _(E,A,w,F){var B;do B=b.uniqueId(F);while(E.hasNode(B));return w.dummy=A,E.setNode(B,w),B}function y(E){return b.max(b.map(E.nodes(),function(A){var w=E.node(A).rank;if(!b.isUndefined(w))return w}))}M.exports={addDummyNode:_,simplify:function(E){var A=new u().setGraph(E.graph());return b.forEach(E.nodes(),function(w){A.setNode(w,E.node(w))}),b.forEach(E.edges(),function(w){var F=A.edge(w.v,w.w)||{weight:0,minlen:1},B=E.edge(w);A.setEdge(w.v,w.w,{weight:F.weight+B.weight,minlen:Math.max(F.minlen,B.minlen)})}),A},asNonCompoundGraph:function(E){var A=new u({multigraph:E.isMultigraph()}).setGraph(E.graph());return b.forEach(E.nodes(),function(w){E.children(w).length||A.setNode(w,E.node(w))}),b.forEach(E.edges(),function(w){A.setEdge(w,E.edge(w))}),A},successorWeights:function(E){var A=b.map(E.nodes(),function(w){var F={};return b.forEach(E.outEdges(w),function(B){F[B.w]=(F[B.w]||0)+E.edge(B).weight}),F});return b.zipObject(E.nodes(),A)},predecessorWeights:function(E){var A=b.map(E.nodes(),function(w){var F={};return b.forEach(E.inEdges(w),function(B){F[B.v]=(F[B.v]||0)+E.edge(B).weight}),F});return b.zipObject(E.nodes(),A)},intersectRect:function(E,A){var w,F,B=E.x,P=E.y,G=A.x-B,K=A.y-P,J=E.width/2,ht=E.height/2;if(!G&&!K)throw new Error("Not possible to find intersection inside of the rectangle");return Math.abs(K)*J>Math.abs(G)*ht?(K<0&&(ht=-ht),w=ht*G/K,F=ht):(G<0&&(J=-J),w=J,F=J*K/G),{x:B+w,y:P+F}},buildLayerMatrix:function(E){var A=b.map(b.range(y(E)+1),function(){return[]});return b.forEach(E.nodes(),function(w){var F=E.node(w),B=F.rank;b.isUndefined(B)||(A[B][F.order]=w)}),A},normalizeRanks:function(E){var A=b.min(b.map(E.nodes(),function(w){return E.node(w).rank}));b.forEach(E.nodes(),function(w){var F=E.node(w);b.has(F,"rank")&&(F.rank-=A)})},removeEmptyRanks:function(E){var A=b.min(b.map(E.nodes(),function(P){return E.node(P).rank})),w=[];b.forEach(E.nodes(),function(P){var G=E.node(P).rank-A;w[G]||(w[G]=[]),w[G].push(P)});var F=0,B=E.graph().nodeRankFactor;b.forEach(w,function(P,G){b.isUndefined(P)&&G%B!=0?--F:F&&b.forEach(P,function(K){E.node(K).rank+=F})})},addBorderNode:function(E,A,w,F){var B={width:0,height:0};return arguments.length>=4&&(B.rank=w,B.order=F),_(E,"border",B,A)},maxRank:y,partition:function(E,A){var w={lhs:[],rhs:[]};return b.forEach(E,function(F){A(F)?w.lhs.push(F):w.rhs.push(F)}),w},time:function(E,A){var w=b.now();try{return A()}finally{console.log(E+" time: "+(b.now()-w)+"ms")}},notime:function(E,A){return A()}}},8177:M=>{M.exports="0.8.5"},7856:function(M){M.exports=function(){function z(ft){return z=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Mt){return typeof Mt}:function(Mt){return Mt&&typeof Symbol=="function"&&Mt.constructor===Symbol&&Mt!==Symbol.prototype?"symbol":typeof Mt},z(ft)}function p(ft,Mt){return p=Object.setPrototypeOf||function(fe,Le){return fe.__proto__=Le,fe},p(ft,Mt)}function b(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function u(ft,Mt,fe){return u=b()?Reflect.construct:function(Le,en,qe){var sn=[null];sn.push.apply(sn,en);var Fe=new(Function.bind.apply(Le,sn));return qe&&p(Fe,qe.prototype),Fe},u.apply(null,arguments)}function _(ft){return function(Mt){if(Array.isArray(Mt))return y(Mt)}(ft)||function(Mt){if(typeof Symbol<"u"&&Mt[Symbol.iterator]!=null||Mt["@@iterator"]!=null)return Array.from(Mt)}(ft)||function(Mt,fe){if(Mt){if(typeof Mt=="string")return y(Mt,fe);var Le=Object.prototype.toString.call(Mt).slice(8,-1);return Le==="Object"&&Mt.constructor&&(Le=Mt.constructor.name),Le==="Map"||Le==="Set"?Array.from(Mt):Le==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Le)?y(Mt,fe):void 0}}(ft)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function y(ft,Mt){(Mt==null||Mt>ft.length)&&(Mt=ft.length);for(var fe=0,Le=new Array(Mt);fe1?fe-1:0),en=1;en/gm),Qe=G(/^data-[\-\w.\u00B7-\uFFFF]/),ne=G(/^aria-[\-\w]+$/),Qt=G(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),se=G(/^(?:\w+script|data):/i),Et=G(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),te=G(/^html$/i),st=function(){return typeof window>"u"?null:window},dt=function(ft,Mt){if(z(ft)!=="object"||typeof ft.createPolicy!="function")return null;var fe=null,Le="data-tt-policy-suffix";Mt.currentScript&&Mt.currentScript.hasAttribute(Le)&&(fe=Mt.currentScript.getAttribute(Le));var en="dompurify"+(fe?"#"+fe:"");try{return ft.createPolicy(en,{createHTML:function(qe){return qe},createScriptURL:function(qe){return qe}})}catch{return console.warn("TrustedTypes policy "+en+" could not be created."),null}};return function ft(){var Mt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:st(),fe=function(Ht){return ft(Ht)};if(fe.version="2.4.0",fe.removed=[],!Mt||!Mt.document||Mt.document.nodeType!==9)return fe.isSupported=!1,fe;var Le=Mt.document,en=Mt.document,qe=Mt.DocumentFragment,sn=Mt.HTMLTemplateElement,Fe=Mt.Node,Te=Mt.Element,Oe=Mt.NodeFilter,Be=Mt.NamedNodeMap,ge=Be===void 0?Mt.NamedNodeMap||Mt.MozNamedAttrMap:Be,re=Mt.HTMLFormElement,An=Mt.DOMParser,Ie=Mt.trustedTypes,ln=Te.prototype,Ye=Y(ln,"cloneNode"),fn=Y(ln,"nextSibling"),Jn=Y(ln,"childNodes"),Dn=Y(ln,"parentNode");if(typeof sn=="function"){var Tn=en.createElement("template");Tn.content&&Tn.content.ownerDocument&&(en=Tn.content.ownerDocument)}var Me=dt(Ie,Le),Ke=Me?Me.createHTML(""):"",Xe=en,Ee=Xe.implementation,mn=Xe.createNodeIterator,At=Xe.createDocumentFragment,vr=Xe.getElementsByTagName,Yt=Le.importNode,Un={};try{Un=yt(en).documentMode?en.documentMode:{}}catch{}var Rn={};fe.isSupported=typeof Dn=="function"&&Ee&&Ee.createHTMLDocument!==void 0&&Un!==9;var Vn,Mn,Hn=wn,In=de,En=Qe,Fn=ne,Pn=se,jn=Et,fa=Qt,Dr=null,Tr=j({},[].concat(_(bt),_(Ct),_($t),_(We),_(pe))),Sn=null,oi=j({},[].concat(_(_e),_(Ae),_(De),_(me))),Nn=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),_r=null,Cr=null,yr=!0,qr=!0,Dt=!1,Ar=!1,Nr=!1,Gn=!1,Zr=!1,Ur=!1,Ir=!1,Qr=!1,xa=!0,cr=!1,ea="user-content-",na=!0,Ni=!1,rn={},Zn=null,an=j({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),nn=null,nr=j({},["audio","video","img","source","image","track"]),qt=null,wi=j({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Kt="http://www.w3.org/1998/Math/MathML",xr="http://www.w3.org/2000/svg",Or="http://www.w3.org/1999/xhtml",Vr=Or,li=!1,ka=["application/xhtml+xml","text/html"],hr="text/html",xn=null,ra=en.createElement("form"),On=function(Ht){return Ht instanceof RegExp||Ht instanceof Function},bi=function(Ht){xn&&xn===Ht||(Ht&&z(Ht)==="object"||(Ht={}),Ht=yt(Ht),Vn=Vn=ka.indexOf(Ht.PARSER_MEDIA_TYPE)===-1?hr:Ht.PARSER_MEDIA_TYPE,Mn=Vn==="application/xhtml+xml"?function(Ve){return Ve}:Zt,Dr="ALLOWED_TAGS"in Ht?j({},Ht.ALLOWED_TAGS,Mn):Tr,Sn="ALLOWED_ATTR"in Ht?j({},Ht.ALLOWED_ATTR,Mn):oi,qt="ADD_URI_SAFE_ATTR"in Ht?j(yt(wi),Ht.ADD_URI_SAFE_ATTR,Mn):wi,nn="ADD_DATA_URI_TAGS"in Ht?j(yt(nr),Ht.ADD_DATA_URI_TAGS,Mn):nr,Zn="FORBID_CONTENTS"in Ht?j({},Ht.FORBID_CONTENTS,Mn):an,_r="FORBID_TAGS"in Ht?j({},Ht.FORBID_TAGS,Mn):{},Cr="FORBID_ATTR"in Ht?j({},Ht.FORBID_ATTR,Mn):{},rn="USE_PROFILES"in Ht&&Ht.USE_PROFILES,yr=Ht.ALLOW_ARIA_ATTR!==!1,qr=Ht.ALLOW_DATA_ATTR!==!1,Dt=Ht.ALLOW_UNKNOWN_PROTOCOLS||!1,Ar=Ht.SAFE_FOR_TEMPLATES||!1,Nr=Ht.WHOLE_DOCUMENT||!1,Ur=Ht.RETURN_DOM||!1,Ir=Ht.RETURN_DOM_FRAGMENT||!1,Qr=Ht.RETURN_TRUSTED_TYPE||!1,Zr=Ht.FORCE_BODY||!1,xa=Ht.SANITIZE_DOM!==!1,cr=Ht.SANITIZE_NAMED_PROPS||!1,na=Ht.KEEP_CONTENT!==!1,Ni=Ht.IN_PLACE||!1,fa=Ht.ALLOWED_URI_REGEXP||fa,Vr=Ht.NAMESPACE||Or,Ht.CUSTOM_ELEMENT_HANDLING&&On(Ht.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Nn.tagNameCheck=Ht.CUSTOM_ELEMENT_HANDLING.tagNameCheck),Ht.CUSTOM_ELEMENT_HANDLING&&On(Ht.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Nn.attributeNameCheck=Ht.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),Ht.CUSTOM_ELEMENT_HANDLING&&typeof Ht.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Nn.allowCustomizedBuiltInElements=Ht.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Ar&&(qr=!1),Ir&&(Ur=!0),rn&&(Dr=j({},_(pe)),Sn=[],rn.html===!0&&(j(Dr,bt),j(Sn,_e)),rn.svg===!0&&(j(Dr,Ct),j(Sn,Ae),j(Sn,me)),rn.svgFilters===!0&&(j(Dr,$t),j(Sn,Ae),j(Sn,me)),rn.mathMl===!0&&(j(Dr,We),j(Sn,De),j(Sn,me))),Ht.ADD_TAGS&&(Dr===Tr&&(Dr=yt(Dr)),j(Dr,Ht.ADD_TAGS,Mn)),Ht.ADD_ATTR&&(Sn===oi&&(Sn=yt(Sn)),j(Sn,Ht.ADD_ATTR,Mn)),Ht.ADD_URI_SAFE_ATTR&&j(qt,Ht.ADD_URI_SAFE_ATTR,Mn),Ht.FORBID_CONTENTS&&(Zn===an&&(Zn=yt(Zn)),j(Zn,Ht.FORBID_CONTENTS,Mn)),na&&(Dr["#text"]=!0),Nr&&j(Dr,["html","head","body"]),Dr.table&&(j(Dr,["tbody"]),delete _r.tbody),P&&P(Ht),xn=Ht)},si=j({},["mi","mo","mn","ms","mtext"]),Oi=j({},["foreignobject","desc","title","annotation-xml"]),lr=j({},["title","style","font","a","script"]),Kr=j({},Ct);j(Kr,$t),j(Kr,be);var Hr=j({},We);j(Hr,xe);var Gr=function(Ht){var Ve=Dn(Ht);Ve&&Ve.tagName||(Ve={namespaceURI:Or,tagName:"template"});var pn=Zt(Ht.tagName),ar=Zt(Ve.tagName);return Ht.namespaceURI===xr?Ve.namespaceURI===Or?pn==="svg":Ve.namespaceURI===Kt?pn==="svg"&&(ar==="annotation-xml"||si[ar]):Boolean(Kr[pn]):Ht.namespaceURI===Kt?Ve.namespaceURI===Or?pn==="math":Ve.namespaceURI===xr?pn==="math"&&Oi[ar]:Boolean(Hr[pn]):Ht.namespaceURI===Or&&!(Ve.namespaceURI===xr&&!Oi[ar])&&!(Ve.namespaceURI===Kt&&!si[ar])&&!Hr[pn]&&(lr[pn]||!Kr[pn])},ni=function(Ht){vt(fe.removed,{element:Ht});try{Ht.parentNode.removeChild(Ht)}catch{try{Ht.outerHTML=Ke}catch{Ht.remove()}}},Ti=function(Ht,Ve){try{vt(fe.removed,{attribute:Ve.getAttributeNode(Ht),from:Ve})}catch{vt(fe.removed,{attribute:null,from:Ve})}if(Ve.removeAttribute(Ht),Ht==="is"&&!Sn[Ht])if(Ur||Ir)try{ni(Ve)}catch{}else try{Ve.setAttribute(Ht,"")}catch{}},Xr=function(Ht){var Ve,pn;if(Zr)Ht=""+Ht;else{var ar=Gt(Ht,/^[\r\n\t ]+/);pn=ar&&ar[0]}Vn==="application/xhtml+xml"&&(Ht=''+Ht+"");var ci=Me?Me.createHTML(Ht):Ht;if(Vr===Or)try{Ve=new An().parseFromString(ci,Vn)}catch{}if(!Ve||!Ve.documentElement){Ve=Ee.createDocument(Vr,"template",null);try{Ve.documentElement.innerHTML=li?"":ci}catch{}}var Er=Ve.body||Ve.documentElement;return Ht&&pn&&Er.insertBefore(en.createTextNode(pn),Er.childNodes[0]||null),Vr===Or?vr.call(Ve,Nr?"html":"body")[0]:Nr?Ve.documentElement:Er},wa=function(Ht){return mn.call(Ht.ownerDocument||Ht,Ht,Oe.SHOW_ELEMENT|Oe.SHOW_COMMENT|Oe.SHOW_TEXT,null,!1)},Ba=function(Ht){return Ht instanceof re&&(typeof Ht.nodeName!="string"||typeof Ht.textContent!="string"||typeof Ht.removeChild!="function"||!(Ht.attributes instanceof ge)||typeof Ht.removeAttribute!="function"||typeof Ht.setAttribute!="function"||typeof Ht.namespaceURI!="string"||typeof Ht.insertBefore!="function")},pr=function(Ht){return z(Fe)==="object"?Ht instanceof Fe:Ht&&z(Ht)==="object"&&typeof Ht.nodeType=="number"&&typeof Ht.nodeName=="string"},Jr=function(Ht,Ve,pn){Rn[Ht]&&at(Rn[Ht],function(ar){ar.call(fe,Ve,pn,xn)})},ti=function(Ht){var Ve;if(Jr("beforeSanitizeElements",Ht,null),Ba(Ht)||mt(/[\u0080-\uFFFF]/,Ht.nodeName))return ni(Ht),!0;var pn=Mn(Ht.nodeName);if(Jr("uponSanitizeElement",Ht,{tagName:pn,allowedTags:Dr}),Ht.hasChildNodes()&&!pr(Ht.firstElementChild)&&(!pr(Ht.content)||!pr(Ht.content.firstElementChild))&&mt(/<[/\w]/g,Ht.innerHTML)&&mt(/<[/\w]/g,Ht.textContent)||pn==="select"&&mt(/