@bkm016/basalt 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/{chunk-755sy11p.js → chunk-01nve4qy.js} +1 -1
  2. package/{chunk-jtsve11b.js → chunk-0fc9apfn.js} +9 -9
  3. package/{chunk-d5j74pcp.js → chunk-1h34mzh7.js} +4 -4
  4. package/{chunk-fgwda4m0.js → chunk-1xfv4bd7.js} +1 -1
  5. package/{chunk-mbpb5c7w.js → chunk-2fyjph3f.js} +1 -1
  6. package/{chunk-13gvs0ax.js → chunk-2kxnw7vs.js} +1 -1
  7. package/{chunk-95964592.js → chunk-37zystxb.js} +11 -11
  8. package/{chunk-h1kb8b49.js → chunk-3pf1d62g.js} +2 -2
  9. package/{chunk-29qrxygd.js → chunk-5wnmbc1b.js} +2 -2
  10. package/{chunk-c71173py.js → chunk-6mges89p.js} +4 -4
  11. package/{chunk-d0a1jxk5.js → chunk-6sz5q3df.js} +2 -2
  12. package/chunk-7er5pz7s.js +479 -0
  13. package/{chunk-gbjn6d81.js → chunk-7g5smgjj.js} +1 -1
  14. package/chunk-7m3jagqn.js +2 -0
  15. package/{chunk-wnzvnskb.js → chunk-85v69h91.js} +2 -2
  16. package/{chunk-38g3gctw.js → chunk-9c4gdg1q.js} +2 -2
  17. package/{chunk-en218k4y.js → chunk-cbgpymt4.js} +1 -1
  18. package/{chunk-a1rb1a48.js → chunk-cdw03j4t.js} +2 -2
  19. package/chunk-ch1r3ted.js +2 -0
  20. package/{chunk-dfh9m9n7.js → chunk-db7ws33a.js} +2 -2
  21. package/{chunk-1n7dat03.js → chunk-ejjem0tc.js} +3 -3
  22. package/{chunk-c4qr1f41.js → chunk-eq4wqxzt.js} +2 -2
  23. package/{chunk-zc9ar0r4.js → chunk-eyrtbbdd.js} +1 -1
  24. package/{chunk-r4ttdkrz.js → chunk-fhxy6y34.js} +2 -2
  25. package/{chunk-zyyzk5ha.js → chunk-fy82qxa1.js} +1 -1
  26. package/{chunk-xtq1xpq0.js → chunk-hc300148.js} +1 -1
  27. package/{chunk-vtqr7dm8.js → chunk-j64dc767.js} +2 -2
  28. package/{chunk-msm9hmk9.js → chunk-jpnf71q7.js} +2 -2
  29. package/{chunk-q9f4xb0w.js → chunk-kpe7pnhy.js} +4 -4
  30. package/{chunk-a98wma9j.js → chunk-ksk49hv0.js} +1 -1
  31. package/{chunk-bdjr0kfr.js → chunk-m4bg1apa.js} +5 -5
  32. package/{chunk-dq01v5eq.js → chunk-nhm9z3d8.js} +1 -1
  33. package/{chunk-30rjf7my.js → chunk-ntks40jd.js} +2 -2
  34. package/{chunk-a1352w87.js → chunk-nw1xpt3s.js} +1 -1
  35. package/{chunk-xh444pfn.js → chunk-p2pmdbt2.js} +8 -8
  36. package/{chunk-hb4f2v34.js → chunk-qfcr5g35.js} +2 -2
  37. package/{chunk-n2jcx65v.js → chunk-qs8zzg50.js} +2 -2
  38. package/{chunk-qaeyhe65.js → chunk-r4gm8ngh.js} +1 -1
  39. package/{chunk-pz2afna8.js → chunk-rks90mh1.js} +1 -1
  40. package/{chunk-asyr3gnq.js → chunk-rwks9zaw.js} +2 -2
  41. package/{chunk-v3ee9z3f.js → chunk-t7te60m7.js} +1 -1
  42. package/{chunk-4dw43syb.js → chunk-tv52xajf.js} +1 -1
  43. package/{chunk-c0zfefq8.js → chunk-v7wcchy2.js} +1 -1
  44. package/{chunk-tevejprz.js → chunk-vjne04dp.js} +3 -3
  45. package/{chunk-ax04trym.js → chunk-w0rr66z7.js} +1 -1
  46. package/{chunk-gkf5jwvj.js → chunk-w6f2r052.js} +1 -1
  47. package/{chunk-0mjb3sm3.js → chunk-wqqjzsjt.js} +327 -282
  48. package/{chunk-c6q04xrd.js → chunk-xef4642x.js} +1 -1
  49. package/compiled.js +7 -7
  50. package/package.json +1 -1
  51. package/ui-test-worker.js +2 -2
  52. package/web/chunk-04drx71p.js +1 -0
  53. package/web/chunk-0mdf1qja.js +1 -0
  54. package/web/chunk-0rdgt4jb.css +1 -0
  55. package/web/{chunk-nawxgz87.js → chunk-19zd0tye.js} +8 -8
  56. package/web/chunk-1m0kp0g3.js +8 -0
  57. package/web/{chunk-07agqp8h.js → chunk-1zwc09e8.js} +2 -2
  58. package/web/{chunk-fmmrthpa.js → chunk-2cyzaqjy.js} +3 -3
  59. package/web/{chunk-vasppf6b.js → chunk-2jfesv7m.js} +2 -2
  60. package/web/{chunk-mykrm8ba.js → chunk-30aeb767.js} +2 -2
  61. package/web/chunk-3j2tcphs.js +1 -0
  62. package/web/chunk-3k9h7a73.js +1142 -0
  63. package/web/chunk-3m1bb2fw.js +1 -0
  64. package/web/{chunk-88wd49xe.js → chunk-3n9ypydh.js} +2 -2
  65. package/web/{chunk-sd3xat3r.js → chunk-3psgr0q8.js} +13 -13
  66. package/web/{chunk-yppgejg7.js → chunk-3qxxrwsp.js} +10 -10
  67. package/web/{chunk-js6kb05s.js → chunk-3rkkp6ed.js} +6 -6
  68. package/web/{chunk-tqze6d6b.js → chunk-4f6a8dsk.js} +1 -1
  69. package/web/{chunk-eqndhs21.js → chunk-4wwd3pfz.js} +2 -2
  70. package/web/chunk-55nvm2mj.js +1 -0
  71. package/web/chunk-5dkqfnh7.js +2 -0
  72. package/web/{chunk-zms6mrqk.js → chunk-5g8md2wg.js} +5 -5
  73. package/web/{chunk-h5ckjk48.js → chunk-5np514v5.js} +12 -12
  74. package/web/{chunk-z4bp6p32.js → chunk-60mym60n.js} +1 -1
  75. package/web/{chunk-bc3ajvfg.js → chunk-6f2sz84q.js} +2 -2
  76. package/web/{chunk-frnh4zqf.js → chunk-6jb2zyp6.js} +2 -2
  77. package/web/{chunk-g7dc4hrd.js → chunk-7adsmqv6.js} +1 -1
  78. package/web/{chunk-g7kz8f7q.js → chunk-7ksg3ccg.js} +5 -5
  79. package/web/chunk-7ky5nrrr.js +1 -0
  80. package/web/{chunk-sc63488q.js → chunk-7v85yvb2.js} +1 -1
  81. package/web/chunk-7vgh17es.js +1 -0
  82. package/web/chunk-80z8s8zb.js +2 -0
  83. package/web/{chunk-rxvm70w5.js → chunk-81s15c2e.js} +2 -2
  84. package/web/{chunk-knm82fw9.js → chunk-8539865x.js} +1 -1
  85. package/web/{chunk-jccz14ye.js → chunk-885kpj14.js} +2 -2
  86. package/web/{chunk-26ecc2xh.js → chunk-8cnjd0f2.js} +5 -5
  87. package/web/chunk-8sdjgv3k.js +1 -0
  88. package/web/chunk-9bxtzwtc.js +1 -0
  89. package/web/chunk-9jy8nc4r.js +1 -0
  90. package/web/{chunk-c57f714b.js → chunk-aa46mrgh.js} +2 -2
  91. package/web/{chunk-gw8x1g61.js → chunk-act3rr85.js} +1 -1
  92. package/web/chunk-aebrw6cv.js +39 -0
  93. package/web/{chunk-j37p0b13.js → chunk-aeymdtm1.js} +3 -3
  94. package/web/{chunk-8h2x89tw.js → chunk-ar6jnhm5.js} +1 -1
  95. package/web/{chunk-tfqarvdx.js → chunk-b5zf1hs3.js} +59 -59
  96. package/web/{chunk-m4fxd5d9.js → chunk-b99k8q22.js} +8 -8
  97. package/web/chunk-bcjgzwef.js +1 -0
  98. package/web/{chunk-jke2ev6m.js → chunk-bra33pt0.js} +2 -2
  99. package/web/{chunk-myd6sc76.js → chunk-bygwbpvq.js} +1 -1
  100. package/web/{chunk-zse05v6j.js → chunk-c3fty2c2.js} +9 -9
  101. package/web/chunk-cxpnj495.js +2 -0
  102. package/web/{chunk-x850q01z.js → chunk-d1btrqmw.js} +1 -1
  103. package/web/{chunk-qdzy124b.js → chunk-d57fm7k0.js} +2 -2
  104. package/web/{chunk-j89s11x8.js → chunk-d73zkc4q.js} +4 -4
  105. package/web/chunk-d94t9z70.js +1 -0
  106. package/web/chunk-de29pe57.js +1 -0
  107. package/web/{chunk-rag65pfs.js → chunk-dndd757x.js} +3 -3
  108. package/web/chunk-e68jw0bg.js +1 -0
  109. package/web/{chunk-grm2208k.js → chunk-e94pd9rr.js} +13 -13
  110. package/web/{chunk-zz1qkaar.js → chunk-enwfd8d5.js} +2 -2
  111. package/web/{chunk-qq6m2my8.js → chunk-fj753yzt.js} +2 -2
  112. package/web/chunk-fr4fft89.js +1 -0
  113. package/web/{chunk-5svqfj4g.js → chunk-g488hxx0.js} +3 -3
  114. package/web/{chunk-0770q5e1.js → chunk-g4zm0crw.js} +1 -1
  115. package/web/chunk-gckmcef6.js +1 -0
  116. package/web/{chunk-se4h6wx0.js → chunk-gkmaryr4.js} +1 -1
  117. package/web/chunk-gnb09wmx.js +1 -0
  118. package/web/{chunk-6e87m0nm.js → chunk-gten0rpx.js} +2 -2
  119. package/web/chunk-h24ybwp6.js +1 -0
  120. package/web/{chunk-z5qn0xev.js → chunk-h754ntg7.js} +2 -2
  121. package/web/{chunk-tt93zbn4.js → chunk-hn8m1vsg.js} +7 -7
  122. package/web/{chunk-rh3xb76f.js → chunk-hqxc9m07.js} +10 -10
  123. package/web/chunk-hrgqc1vr.js +1 -0
  124. package/web/{chunk-3eexx7y5.js → chunk-hva7xyne.js} +2 -2
  125. package/web/chunk-hxbfkdjd.js +1 -0
  126. package/web/chunk-j9c8fa82.js +1 -0
  127. package/web/{chunk-5v5q13hz.js → chunk-jeafmjsm.js} +2 -2
  128. package/web/chunk-jyf7a7yp.js +2 -0
  129. package/web/chunk-jz5mmp64.js +1 -0
  130. package/web/{chunk-18neka5g.js → chunk-k4dnjf8n.js} +5 -5
  131. package/web/{chunk-32ty2xfn.js → chunk-kerfb21g.js} +1 -1
  132. package/web/chunk-kxeaj44h.js +1 -0
  133. package/web/chunk-m0136xav.js +1 -0
  134. package/web/chunk-m1rdyvb5.js +1 -0
  135. package/web/chunk-m6vyvgm5.js +1 -0
  136. package/web/{chunk-w3zgfhjb.js → chunk-mxkbmgcv.js} +2 -2
  137. package/web/chunk-my0ec787.js +1 -0
  138. package/web/{chunk-qy1zx2yw.js → chunk-n9v14vyd.js} +22 -22
  139. package/web/{chunk-x5g1yy12.js → chunk-ncfzmf2g.js} +1 -1
  140. package/web/chunk-nkpdd9hw.js +1 -0
  141. package/web/chunk-ny436sqg.js +1 -0
  142. package/web/chunk-pbp1p5ex.js +1 -0
  143. package/web/chunk-ph75hddv.js +1 -0
  144. package/web/chunk-phdfyqaa.js +1 -0
  145. package/web/chunk-phxa5krt.js +1 -0
  146. package/web/{chunk-wrevb4ew.js → chunk-pjpre6de.js} +6 -6
  147. package/web/{chunk-vvvd3grf.js → chunk-pzg25qqe.js} +2 -2
  148. package/web/chunk-q1zxvjhs.js +2 -0
  149. package/web/{chunk-1qh7f5kr.js → chunk-qdd3bx8q.js} +1 -1
  150. package/web/{chunk-9yfftz38.js → chunk-qp3tjhaq.js} +1 -1
  151. package/web/chunk-r4zbw4zj.js +2 -0
  152. package/web/{chunk-1ev0n3n4.js → chunk-r6kk4vp1.js} +2 -2
  153. package/web/{chunk-n4yzs2q0.js → chunk-rdr6wt22.js} +4 -4
  154. package/web/chunk-ry4ycah9.js +1 -0
  155. package/web/{chunk-de40q05r.js → chunk-sdr5wa4z.js} +3 -3
  156. package/web/chunk-sqm16fat.js +1 -0
  157. package/web/{chunk-gsw1tv96.js → chunk-td83xf12.js} +1 -1
  158. package/web/{chunk-t5nvgz7z.js → chunk-v0wtk059.js} +7 -7
  159. package/web/{chunk-pgwf37s2.js → chunk-v1hfbjz9.js} +5 -5
  160. package/web/chunk-v1qt3gq4.js +1 -0
  161. package/web/{chunk-wtvch4ad.js → chunk-v34mr9ky.js} +9 -9
  162. package/web/chunk-v854w9yn.js +1 -0
  163. package/web/{chunk-xtn305fd.js → chunk-ve56gxq0.js} +1 -1
  164. package/web/chunk-w573ym17.js +1 -0
  165. package/web/{chunk-dv1berk6.js → chunk-w9gnqkez.js} +2 -2
  166. package/web/{chunk-q4bst4an.js → chunk-wqzbxzk3.js} +1 -1
  167. package/web/{chunk-rwfmccmh.js → chunk-wvrs986a.js} +4 -4
  168. package/web/chunk-x0mjydtp.js +1 -0
  169. package/web/{chunk-awkdw9rw.js → chunk-xbyrgyy0.js} +2 -2
  170. package/web/{chunk-p55vhns6.js → chunk-xpecre7w.js} +4 -4
  171. package/web/{chunk-ehtmb6sn.js → chunk-xvfeq8v2.js} +13 -13
  172. package/web/{chunk-rbqnre6q.js → chunk-yf8ykk4v.js} +4 -4
  173. package/web/{chunk-sjkg40ay.js → chunk-yjs6jmdb.js} +1 -1
  174. package/web/chunk-ym7kv2hs.js +1 -0
  175. package/web/chunk-zhybh04p.js +1 -0
  176. package/web/index.html +1 -1
  177. package/worker.js +1 -1
  178. package/chunk-3mqf9ped.js +0 -479
  179. package/chunk-7zkswxvk.js +0 -2
  180. package/chunk-m1eam0s5.js +0 -2
  181. package/web/chunk-045d3b5d.js +0 -1
  182. package/web/chunk-12qf1r6m.js +0 -1
  183. package/web/chunk-1ex3wgms.js +0 -2
  184. package/web/chunk-2cz7tx8q.js +0 -1
  185. package/web/chunk-46jnkghq.js +0 -2
  186. package/web/chunk-4am8j3k3.js +0 -1
  187. package/web/chunk-5qvmefq2.js +0 -1
  188. package/web/chunk-5z2n4z9x.css +0 -1
  189. package/web/chunk-6y55gk1n.js +0 -1
  190. package/web/chunk-7np1jp3x.js +0 -8
  191. package/web/chunk-7qq1ypvj.js +0 -1
  192. package/web/chunk-87e8d1hv.js +0 -1
  193. package/web/chunk-8y2526ve.js +0 -1
  194. package/web/chunk-905vw286.js +0 -2
  195. package/web/chunk-918e5t4x.js +0 -2
  196. package/web/chunk-96m2m3e8.js +0 -1
  197. package/web/chunk-9f4zzqbx.js +0 -1
  198. package/web/chunk-a1n4468c.js +0 -1
  199. package/web/chunk-arnzrqnm.js +0 -1
  200. package/web/chunk-b46ws7rf.js +0 -1
  201. package/web/chunk-bwy3e58v.js +0 -1
  202. package/web/chunk-d5gshd1a.js +0 -1
  203. package/web/chunk-dp0k5vhd.js +0 -1
  204. package/web/chunk-eh7wp62z.js +0 -2
  205. package/web/chunk-et1hytyv.js +0 -1
  206. package/web/chunk-f7jpakwh.js +0 -1
  207. package/web/chunk-f9m9seam.js +0 -1
  208. package/web/chunk-g2erm7k0.js +0 -1
  209. package/web/chunk-g3kbn0t2.js +0 -1
  210. package/web/chunk-ght0t49g.js +0 -1
  211. package/web/chunk-ghwm7bdj.js +0 -2
  212. package/web/chunk-h2txs73e.js +0 -39
  213. package/web/chunk-h3tkacc7.js +0 -1
  214. package/web/chunk-je78j3vr.js +0 -1
  215. package/web/chunk-kxdtg9dt.js +0 -1
  216. package/web/chunk-m9xzt9p7.js +0 -1
  217. package/web/chunk-ngt1j8py.js +0 -1139
  218. package/web/chunk-q34as3v6.js +0 -1
  219. package/web/chunk-qe0bgeda.js +0 -1
  220. package/web/chunk-sat7zyva.js +0 -1
  221. package/web/chunk-sk0hpa80.js +0 -1
  222. package/web/chunk-tvcxrx6h.js +0 -1
  223. package/web/chunk-tzpnh70q.js +0 -1
  224. package/web/chunk-vb7g4xg6.js +0 -1
  225. package/web/chunk-wzfe6jtq.js +0 -1
  226. package/web/chunk-xh4xn1az.js +0 -1
  227. package/web/chunk-xk904wqv.js +0 -1
  228. package/web/chunk-xzwxcxb4.js +0 -1
  229. package/web/chunk-yekaz74b.js +0 -1
  230. package/web/chunk-ys2tns0p.js +0 -1
@@ -1,15 +1,15 @@
1
- import{t,K,br,u,d,N,x,F,C,S,E,T,A,L,R,p,V,U,m}from"./chunk-tfqarvdx.js";var fe=(e,s)=>br(e,"a",-s),wt=fe;function It(e,s){let i=de(e),n=i.filter((c)=>he(c,e)),r=0,o=0,a=[];if(n.length>1){let c=Kt(n);for(let h=0;h<n.length;++h){let l=n[h];l.angle=Math.atan2(l.x-c.x,l.y-c.y)}n.sort((h,l)=>l.angle-h.angle);let g=n[n.length-1];for(let h=0;h<n.length;++h){let l=n[h];o+=(g.x+l.x)*(l.y-g.y);let I={x:(l.x+g.x)/2,y:(l.y+g.y)/2},b=null;for(let _=0;_<l.parentIndex.length;++_)if(g.parentIndex.includes(l.parentIndex[_])){let M=e[l.parentIndex[_]],j=Math.atan2(l.x-M.x,l.y-M.y),G=Math.atan2(g.x-M.x,g.y-M.y),B=G-j;if(B<0)B+=2*Math.PI;let P=G-B/2,v=at(I,{x:M.x+M.radius*Math.sin(P),y:M.y+M.radius*Math.cos(P)});if(v>M.radius*2)v=M.radius*2;if(b==null||b.width>v)b={circle:M,width:v,p1:l,p2:g,large:v>M.radius,sweep:!0}}if(b!=null)a.push(b),r+=Tt(b.circle.radius,b.width),g=l}}else{let c=e[0];for(let h=1;h<e.length;++h)if(e[h].radius<c.radius)c=e[h];let g=!1;for(let h=0;h<e.length;++h)if(at(e[h],c)>Math.abs(c.radius-e[h].radius)){g=!0;break}if(g)r=o=0;else r=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-0.0000000001,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0})}if(o/=2,s)s.area=r+o,s.arcArea=r,s.polygonArea=o,s.arcs=a,s.innerPoints=n,s.intersectionPoints=i;return r+o}function he(e,s){return s.every((i)=>at(e,i)<i.radius+0.0000000001)}function de(e){let s=[];for(let i=0;i<e.length;++i)for(let n=i+1;n<e.length;++n){let r=Wt(e[i],e[n]);for(let o of r)o.parentIndex=[i,n],s.push(o)}return s}function Tt(e,s){return e*e*Math.acos(1-s/e)-(e-s)*Math.sqrt(s*(2*e-s))}function at(e,s){return Math.sqrt((e.x-s.x)*(e.x-s.x)+(e.y-s.y)*(e.y-s.y))}function Nt(e,s,i){if(i>=e+s)return 0;if(i<=Math.abs(e-s))return Math.PI*Math.min(e,s)*Math.min(e,s);let n=e-(i*i-s*s+e*e)/(2*i),r=s-(i*i-e*e+s*s)/(2*i);return Tt(e,n)+Tt(s,r)}function Wt(e,s){let i=at(e,s),n=e.radius,r=s.radius;if(i>=n+r||i<=Math.abs(n-r))return[];let o=(n*n-r*r+i*i)/(2*i),a=Math.sqrt(n*n-o*o),c=e.x+o*(s.x-e.x)/i,g=e.y+o*(s.y-e.y)/i,h=-(s.y-e.y)*(a/i),l=-(s.x-e.x)*(a/i);return[{x:c+h,y:g-l},{x:c-h,y:g+l}]}function Kt(e){let s={x:0,y:0};for(let i of e)s.x+=i.x,s.y+=i.y;return s.x/=e.length,s.y/=e.length,s}function ge(e,s,i,n){n=n||{};let r=n.maxIterations||100,o=n.tolerance||0.0000000001,a=e(s),c=e(i),g=i-s;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return s;if(c===0)return i;for(let h=0;h<r;++h){g/=2;let l=s+g,I=e(l);if(I*a>=0)s=l;if(Math.abs(g)<o||I===0)return l}return s+g}function zt(e){let s=Array(e);for(let i=0;i<e;++i)s[i]=0;return s}function Ut(e,s){return zt(e).map(()=>zt(s))}function mt(e,s){let i=0;for(let n=0;n<e.length;++n)i+=e[n]*s[n];return i}function At(e){return Math.sqrt(mt(e,e))}function Ct(e,s,i){for(let n=0;n<s.length;++n)e[n]=s[n]*i}function xt(e,s,i,n,r){for(let o=0;o<e.length;++o)e[o]=s*i[o]+n*r[o]}function Ht(e,s,i){i=i||{};let n=i.maxIterations||s.length*200,r=i.nonZeroDelta||1.05,o=i.zeroDelta||0.001,a=i.minErrorDelta||0.000001,c=i.minErrorDelta||0.00001,g=i.rho!==void 0?i.rho:1,h=i.chi!==void 0?i.chi:2,l=i.psi!==void 0?i.psi:-0.5,I=i.sigma!==void 0?i.sigma:0.5,b,_=s.length,M=Array(_+1);M[0]=s,M[0].fx=e(s),M[0].id=0;for(let z=0;z<_;++z){let f=s.slice();f[z]=f[z]?f[z]*r:o,M[z+1]=f,M[z+1].fx=e(f),M[z+1].id=z+1}function j(z){for(let f=0;f<z.length;f++)M[_][f]=z[f];M[_].fx=z.fx}let G=(z,f)=>z.fx-f.fx,B=s.slice(),P=s.slice(),v=s.slice(),w=s.slice();for(let z=0;z<n;++z){if(M.sort(G),i.history){let k=M.map((y)=>{let Y=y.slice();return Y.fx=y.fx,Y.id=y.id,Y});k.sort((y,Y)=>y.id-Y.id),i.history.push({x:M[0].slice(),fx:M[0].fx,simplex:k})}b=0;for(let k=0;k<_;++k)b=Math.max(b,Math.abs(M[0][k]-M[1][k]));if(Math.abs(M[0].fx-M[_].fx)<a&&b<c)break;for(let k=0;k<_;++k){B[k]=0;for(let y=0;y<_;++y)B[k]+=M[y][k];B[k]/=_}let f=M[_];if(xt(P,1+g,B,-g,f),P.fx=e(P),P.fx<M[0].fx)if(xt(w,1+h,B,-h,f),w.fx=e(w),w.fx<P.fx)j(w);else j(P);else if(P.fx>=M[_-1].fx){let k=!1;if(P.fx>f.fx)if(xt(v,1+l,B,-l,f),v.fx=e(v),v.fx<f.fx)j(v);else k=!0;else if(xt(v,1-l*g,B,l*g,f),v.fx=e(v),v.fx<P.fx)j(v);else k=!0;if(k){if(I>=1)break;for(let y=1;y<M.length;++y)xt(M[y],1-I,M[0],I,M[y]),M[y].fx=e(M[y])}}else j(P)}return M.sort(G),{fx:M[0].fx,x:M[0]}}function xe(e,s,i,n,r,o,a){let c=i.fx,g=mt(i.fxprime,s),h=c,l=c,I=g,b=0;r=r||1,o=o||0.000001,a=a||0.1;function _(M,j,G){for(let B=0;B<16;++B)if(r=(M+j)/2,xt(n.x,1,i.x,r,s),h=n.fx=e(n.x,n.fxprime),I=mt(n.fxprime,s),h>c+o*r*g||h>=G)j=r;else{if(Math.abs(I)<=-a*g)return r;if(I*(j-M)>=0)j=M;M=r,G=h}return 0}for(let M=0;M<10;++M){if(xt(n.x,1,i.x,r,s),h=n.fx=e(n.x,n.fxprime),I=mt(n.fxprime,s),h>c+o*r*g||M&&h>=l)return _(b,r,l);if(Math.abs(I)<=-a*g)return r;if(I>=0)return _(r,b,h);l=h,b=r,r*=2}return r}function ye(e,s,i){let n={x:s.slice(),fx:0,fxprime:s.slice()},r={x:s.slice(),fx:0,fxprime:s.slice()},o=s.slice(),a,c,g=1,h;i=i||{},h=i.maxIterations||s.length*20,n.fx=e(n.x,n.fxprime),a=n.fxprime.slice(),Ct(a,n.fxprime,-1);for(let l=0;l<h;++l){if(g=xe(e,a,n,r,g),i.history)i.history.push({x:n.x.slice(),fx:n.fx,fxprime:n.fxprime.slice(),alpha:g});if(!g)Ct(a,n.fxprime,-1);else{xt(o,1,r.fxprime,-1,n.fxprime);let I=mt(n.fxprime,n.fxprime),b=Math.max(0,mt(o,r.fxprime)/I);xt(a,b,a,-1,r.fxprime),c=n,n=r,r=c}if(At(n.fxprime)<=0.00001)break}if(i.history)i.history.push({x:n.x.slice(),fx:n.fx,fxprime:n.fxprime.slice(),alpha:g});return n}function Yt(e,s={}){s.maxIterations=s.maxIterations||500;let i=s.initialLayout||ve,n=s.lossFunction||bt,r=pe(e,s),o=i(r,s),a=Object.keys(o),c=[];for(let l of a)c.push(o[l].x),c.push(o[l].y);let h=Ht((l)=>{let I={};for(let b=0;b<a.length;++b){let _=a[b];I[_]={x:l[2*b],y:l[2*b+1],radius:o[_].radius}}return n(I,r)},c,s).x;for(let l=0;l<a.length;++l){let I=a[l];o[I].x=h[2*l],o[I].y=h[2*l+1]}return o}var Xt=0.0000000001;function Dt(e,s,i){if(Math.min(e,s)*Math.min(e,s)*Math.PI<=i+Xt)return Math.abs(e-s);return ge((n)=>Nt(e,s,n)-i,0,e+s)}function pe(e,s={}){let i=s.distinct,n=e.map((c)=>Object.assign({},c));function r(c){return c.join(";")}if(i){let c=new Map;for(let g of n)for(let h=0;h<g.sets.length;h++){let l=String(g.sets[h]);c.set(l,g.size+(c.get(l)||0));for(let I=h+1;I<g.sets.length;I++){let b=String(g.sets[I]),_=`${l};${b}`,M=`${b};${l}`;c.set(_,g.size+(c.get(_)||0)),c.set(M,g.size+(c.get(M)||0))}}for(let g of n)if(g.sets.length<3)g.size=c.get(r(g.sets))}let o=[],a=new Set;for(let c of n)if(c.sets.length===1)o.push(c.sets[0]);else if(c.sets.length===2){let g=c.sets[0],h=c.sets[1];a.add(r(c.sets)),a.add(r([h,g]))}o.sort((c,g)=>c===g?0:c<g?-1:1);for(let c=0;c<o.length;++c){let g=o[c];for(let h=c+1;h<o.length;++h){let l=o[h];if(!a.has(r([g,l])))n.push({sets:[g,l],size:0})}}return n}function me(e,s,i){let n=Ut(s.length,s.length),r=Ut(s.length,s.length);return e.filter((o)=>o.sets.length===2).forEach((o)=>{let a=i[o.sets[0]],c=i[o.sets[1]],g=Math.sqrt(s[a].size/Math.PI),h=Math.sqrt(s[c].size/Math.PI),l=Dt(g,h,o.size);n[a][c]=n[c][a]=l;let I=0;if(o.size+0.0000000001>=Math.min(s[a].size,s[c].size))I=1;else if(o.size<=0.0000000001)I=-1;r[a][c]=r[c][a]=I}),{distances:n,constraints:r}}function be(e,s,i,n){for(let o=0;o<s.length;++o)s[o]=0;let r=0;for(let o=0;o<i.length;++o){let a=e[2*o],c=e[2*o+1];for(let g=o+1;g<i.length;++g){let h=e[2*g],l=e[2*g+1],I=i[o][g],b=n[o][g],_=(h-a)*(h-a)+(l-c)*(l-c),M=Math.sqrt(_),j=_-I*I;if(b>0&&M<=I||b<0&&M>=I)continue;r+=2*j*j,s[2*o]+=4*j*(a-h),s[2*o+1]+=4*j*(c-l),s[2*g]+=4*j*(h-a),s[2*g+1]+=4*j*(l-c)}}return r}function ve(e,s={}){let i=Ie(e,s),n=s.lossFunction||bt;if(e.length>=8){let r=ke(e,s),o=n(r,e),a=n(i,e);if(o+0.00000001<a)i=r}return i}function ke(e,s={}){let i=s.restarts||10,n=[],r={};for(let b of e)if(b.sets.length===1)r[b.sets[0]]=n.length,n.push(b);let{distances:o,constraints:a}=me(e,n,r),c=At(o.map(At))/o.length;o=o.map((b)=>b.map((_)=>_/c));let g=(b,_)=>be(b,_,o,a),h=null;for(let b=0;b<i;++b){let _=zt(o.length*2).map(Math.random),M=ye(g,_,s);if(!h||M.fx<h.fx)h=M}let l=h.x,I={};for(let b=0;b<n.length;++b){let _=n[b];I[_.sets[0]]={x:l[2*b]*c,y:l[2*b+1]*c,radius:Math.sqrt(_.size/Math.PI)}}if(s.history)for(let b of s.history)Ct(b.x,c);return I}function Ie(e,s){let i=s&&s.lossFunction?s.lossFunction:bt,n={},r={};for(let I of e)if(I.sets.length===1){let b=I.sets[0];n[b]={x:10000000000,y:10000000000,rowid:n.length,size:I.size,radius:Math.sqrt(I.size/Math.PI)},r[b]=[]}e=e.filter((I)=>I.sets.length===2);for(let I of e){let b=I.weight!=null?I.weight:1,_=I.sets[0],M=I.sets[1];if(I.size+Xt>=Math.min(n[_].size,n[M].size))b=0;r[_].push({set:M,size:I.size,weight:b}),r[M].push({set:_,size:I.size,weight:b})}let o=[];Object.keys(r).forEach((I)=>{let b=0;for(let _=0;_<r[I].length;++_)b+=r[I][_].size*r[I][_].weight;o.push({set:I,size:b})});function a(I,b){return b.size-I.size}o.sort(a);let c={};function g(I){return I.set in c}function h(I,b){n[b].x=I.x,n[b].y=I.y,c[b]=!0}h({x:0,y:0},o[0].set);for(let I=1;I<o.length;++I){let b=o[I].set,_=r[b].filter(g),M=n[b];if(_.sort(a),_.length===0)throw"ERROR: missing pairwise overlap information";let j=[];for(var l=0;l<_.length;++l){let P=n[_[l].set],v=Dt(M.radius,P.radius,_[l].size);j.push({x:P.x+v,y:P.y}),j.push({x:P.x-v,y:P.y}),j.push({y:P.y+v,x:P.x}),j.push({y:P.y-v,x:P.x});for(let w=l+1;w<_.length;++w){let z=n[_[w].set],f=Dt(M.radius,z.radius,_[w].size),k=Wt({x:P.x,y:P.y,radius:v},{x:z.x,y:z.y,radius:f});j.push(...k)}}let G=100000000000000000000000000000000000000000000000000,B=j[0];for(let P of j){n[b].x=P.x,n[b].y=P.y;let v=i(n,e);if(v<G)G=v,B=P}h(B,b)}return n}function bt(e,s){let i=0;for(let n of s){if(n.sets.length===1)continue;let r;if(n.sets.length===2){let a=e[n.sets[0]],c=e[n.sets[1]];r=Nt(a.radius,c.radius,at(a,c))}else r=It(n.sets.map((a)=>e[a]));let o=n.weight!=null?n.weight:1;i+=o*(r-n.size)*(r-n.size)}return i}function Zt(e,s){let i=0;for(let n of s){if(n.sets.length===1)continue;let r;if(n.sets.length===2){let c=e[n.sets[0]],g=e[n.sets[1]];r=Nt(c.radius,g.radius,at(c,g))}else r=It(n.sets.map((c)=>e[c]));let o=n.weight!=null?n.weight:1,a=Math.log((r+1)/(n.size+1));i+=o*a*a}return i}function Me(e,s,i){if(i==null)e.sort((r,o)=>o.radius-r.radius);else e.sort(i);if(e.length>0){let r=e[0].x,o=e[0].y;for(let a of e)a.x-=r,a.y-=o}if(e.length===2){if(at(e[0],e[1])<Math.abs(e[1].radius-e[0].radius))e[1].x=e[0].x+e[0].radius-e[1].radius-0.0000000001,e[1].y=e[0].y}if(e.length>1){let r=Math.atan2(e[1].x,e[1].y)-s,o=Math.cos(r),a=Math.sin(r);for(let c of e){let{x:g,y:h}=c;c.x=o*g-a*h,c.y=a*g+o*h}}if(e.length>2){let r=Math.atan2(e[2].x,e[2].y)-s;while(r<0)r+=2*Math.PI;while(r>2*Math.PI)r-=2*Math.PI;if(r>Math.PI){let o=e[1].y/(0.0000000001+e[1].x);for(let a of e){var n=(a.x+o*a.y)/(1+o*o);a.x=2*n-a.x,a.y=2*n*o-a.y}}}}function Se(e){e.forEach((r)=>{r.parent=r});function s(r){if(r.parent!==r)r.parent=s(r.parent);return r.parent}function i(r,o){let a=s(r),c=s(o);a.parent=c}for(let r=0;r<e.length;++r)for(let o=r+1;o<e.length;++o){let a=e[r].radius+e[o].radius;if(at(e[r],e[o])+0.0000000001<a)i(e[o],e[r])}let n=new Map;for(let r=0;r<e.length;++r){let o=s(e[r]).parent.setid;if(!n.has(o))n.set(o,[]);n.get(o).push(e[r])}return e.forEach((r)=>{delete r.parent}),Array.from(n.values())}function Rt(e){let s=(i)=>{let n=e.reduce((o,a)=>Math.max(o,a[i]+a.radius),Number.NEGATIVE_INFINITY),r=e.reduce((o,a)=>Math.min(o,a[i]-a.radius),Number.POSITIVE_INFINITY);return{max:n,min:r}};return{xRange:s("x"),yRange:s("y")}}function Jt(e,s,i){if(s==null)s=Math.PI/2;let n=te(e).map((h)=>Object.assign({},h)),r=Se(n);for(let h of r){Me(h,s,i);let l=Rt(h);h.size=(l.xRange.max-l.xRange.min)*(l.yRange.max-l.yRange.min),h.bounds=l}r.sort((h,l)=>l.size-h.size),n=r[0];let o=n.bounds,a=(o.xRange.max-o.xRange.min)/50;function c(h,l,I){if(!h)return;let b=h.bounds,_,M;if(l)_=o.xRange.max-b.xRange.min+a;else{_=o.xRange.max-b.xRange.max;let j=(b.xRange.max-b.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;if(j<0)_+=j}if(I)M=o.yRange.max-b.yRange.min+a;else{M=o.yRange.max-b.yRange.max;let j=(b.yRange.max-b.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;if(j<0)M+=j}for(let j of h)j.x+=_,j.y+=M,n.push(j)}let g=1;while(g<r.length)c(r[g],!0,!1),c(r[g+1],!1,!0),c(r[g+2],!0,!0),g+=3,o=Rt(n);return $t(n)}function Qt(e,s,i,n,r){let o=te(e);s-=2*n,i-=2*n;let{xRange:a,yRange:c}=Rt(o);if(a.max===a.min||c.max===c.min)return console.log("not scaling solution: zero size detected"),e;let g,h;if(r){let _=Math.sqrt(r/Math.PI)*2;g=s/_,h=i/_}else g=s/(a.max-a.min),h=i/(c.max-c.min);let l=Math.min(h,g),I=(s-(a.max-a.min)*l)/2,b=(i-(c.max-c.min)*l)/2;return $t(o.map((_)=>({radius:l*_.radius,x:n+I+(_.x-a.min)*l,y:n+b+(_.y-c.min)*l,setid:_.setid})))}function $t(e){let s={};for(let i of e)s[i.setid]=i;return s}function te(e){return Object.keys(e).map((i)=>Object.assign(e[i],{setid:i}))}function ee(e={}){let s=!1,i=600,n=350,r=15,o=1000,a=Math.PI/2,c=!0,g=null,h=!0,l=!0,I=null,b=null,_=!1,M=null,j=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,G={},B=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],P=0,v=function(k){if(k in G)return G[k];var y=G[k]=B[P];if(P+=1,P>=B.length)P=0;return y},w=Yt,z=bt;function f(k){let y=k.datum(),Y=new Set;y.forEach((D)=>{if(D.size==0&&D.sets.length==1)Y.add(D.sets[0])}),y=y.filter((D)=>!D.sets.some((Q)=>Y.has(Q)));let O={},X={};if(y.length>0){let D=w(y,{lossFunction:z,distinct:_});if(c)D=Jt(D,a,b);O=Qt(D,i,n,r,g),X=se(O,y,j)}let lt={};y.forEach((D)=>{if(D.label)lt[D.sets]=D.label});function st(D){if(D.sets in lt)return lt[D.sets];if(D.sets.length==1)return""+D.sets[0]}k.selectAll("svg").data([O]).enter().append("svg");let J=k.select("svg");if(s)J.attr("viewBox",`0 0 ${i} ${n}`);else J.attr("width",i).attr("height",n);let H={},Z=!1;J.selectAll(".venn-area path").each(function(D){let Q=this.getAttribute("d");if(D.sets.length==1&&Q&&!_)Z=!0,H[D.sets[0]]=Ee(Q)});function q(D){return(Q)=>{let pt=D.sets.map((gt)=>{let dt=H[gt],ot=O[gt];if(!dt)dt={x:i/2,y:n/2,radius:1};if(!ot)ot={x:i/2,y:n/2,radius:1};return{x:dt.x*(1-Q)+ot.x*Q,y:dt.y*(1-Q)+ot.y*Q,radius:dt.radius*(1-Q)+ot.radius*Q}});return Gt(pt,M)}}let tt=J.selectAll(".venn-area").data(y,(D)=>D.sets),it=tt.enter().append("g").attr("class",(D)=>`venn-area venn-${D.sets.length==1?"circle":"intersection"}${D.colour||D.color?" venn-coloured":""}`).attr("data-venn-sets",(D)=>D.sets.join("_")),et=it.append("path"),ct=it.append("text").attr("class","label").text((D)=>st(D)).attr("text-anchor","middle").attr("dy",".35em").attr("x",i/2).attr("y",n/2);if(l)et.style("fill-opacity","0").filter((D)=>D.sets.length==1).style("fill",(D)=>D.colour?D.colour:D.color?D.color:v(D.sets)).style("fill-opacity",".25"),ct.style("fill",(D)=>{if(D.colour||D.color)return"#FFF";if(e.textFill)return e.textFill;return D.sets.length==1?v(D.sets):"#444"});function rt(D){if(typeof D.transition==="function")return D.transition("venn").duration(o);return D}let nt=k;if(Z&&typeof nt.transition==="function")nt=rt(k),nt.selectAll("path").attrTween("d",q);else nt.selectAll("path").attr("d",(D)=>Gt(D.sets.map((Q)=>O[Q])),M);let W=nt.selectAll("text").filter((D)=>(D.sets in X)).text((D)=>st(D)).attr("x",(D)=>Math.floor(X[D.sets].x)).attr("y",(D)=>Math.floor(X[D.sets].y));if(h)if(Z)if("on"in W)W.on("end",_t(O,st));else W.each("end",_t(O,st));else W.each(_t(O,st));let ht=rt(tt.exit()).remove();if(typeof tt.transition==="function")ht.selectAll("path").attrTween("d",q);let ft=ht.selectAll("text").attr("x",i/2).attr("y",n/2);if(I!==null)ct.style("font-size","0px"),W.style("font-size",I),ft.style("font-size","0px");return{circles:O,textCentres:X,nodes:tt,enter:it,update:nt,exit:ht}}return f.wrap=function(k){if(!arguments.length)return h;return h=k,f},f.useViewBox=function(){return s=!0,f},f.width=function(k){if(!arguments.length)return i;return i=k,f},f.height=function(k){if(!arguments.length)return n;return n=k,f},f.padding=function(k){if(!arguments.length)return r;return r=k,f},f.distinct=function(k){if(!arguments.length)return _;return _=k,f},f.colours=function(k){if(!arguments.length)return v;return v=k,f},f.colors=function(k){if(!arguments.length)return v;return v=k,f},f.fontSize=function(k){if(!arguments.length)return I;return I=k,f},f.round=function(k){if(!arguments.length)return M;return M=k,f},f.duration=function(k){if(!arguments.length)return o;return o=k,f},f.layoutFunction=function(k){if(!arguments.length)return w;return w=k,f},f.normalize=function(k){if(!arguments.length)return c;return c=k,f},f.scaleToFit=function(k){if(!arguments.length)return g;return g=k,f},f.styled=function(k){if(!arguments.length)return l;return l=k,f},f.orientation=function(k){if(!arguments.length)return a;return a=k,f},f.orientationOrder=function(k){if(!arguments.length)return b;return b=k,f},f.lossFunction=function(k){if(!arguments.length)return z;return z=k==="default"?bt:k==="logRatio"?Zt:k,f},f}function _t(e,s){return function(i){let n=this,r=e[i.sets[0]].radius||50,o=s(i)||"",a=o.split(/\s+/).reverse(),c=3,g=(o.length+a.length)/3,h=a.pop(),l=[h],I=0,b=1.1;n.textContent=null;let _=[];function M(v){let w=n.ownerDocument.createElementNS(n.namespaceURI,"tspan");return w.textContent=v,_.push(w),n.append(w),w}let j=M(h);while(!0){if(h=a.pop(),!h)break;l.push(h);let v=l.join(" ");if(j.textContent=v,v.length>g&&j.getComputedTextLength()>r)l.pop(),j.textContent=l.join(" "),l=[h],j=M(h),I++}let G=0.35-I*b/2,B=n.getAttribute("x"),P=n.getAttribute("y");_.forEach((v,w)=>{v.setAttribute("x",B),v.setAttribute("y",P),v.setAttribute("dy",`${G+w*b}em`)})}}function Et(e,s,i){let n=s[0].radius-at(s[0],e);for(let r=1;r<s.length;++r){let o=s[r].radius-at(s[r],e);if(o<=n)n=o}for(let r=0;r<i.length;++r){let o=at(i[r],e)-i[r].radius;if(o<=n)n=o}return n}function ne(e,s,i){let n=[];for(let l of e)n.push({x:l.x,y:l.y}),n.push({x:l.x+l.radius/2,y:l.y}),n.push({x:l.x-l.radius/2,y:l.y}),n.push({x:l.x,y:l.y+l.radius/2}),n.push({x:l.x,y:l.y-l.radius/2});let r=n[0],o=Et(n[0],e,s);for(let l=1;l<n.length;++l){let I=Et(n[l],e,s);if(I>=o)r=n[l],o=I}let a=Ht((l)=>-1*Et({x:l[0],y:l[1]},e,s),[r.x,r.y],{maxIterations:500,minErrorDelta:0.0000000001}).x,c={x:i?0:a[0],y:a[1]},g=!0;for(let l of e)if(at(c,l)>l.radius){g=!1;break}for(let l of s)if(at(c,l)<l.radius){g=!1;break}if(g)return c;if(e.length==1)return{x:e[0].x,y:e[0].y};let h={};if(It(e,h),h.arcs.length===0)return{x:0,y:-1000,disjoint:!0};if(h.arcs.length==1)return{x:h.arcs[0].circle.x,y:h.arcs[0].circle.y};if(s.length)return ne(e,[]);return Kt(h.arcs.map((l)=>l.p1))}function we(e){let s={},i=Object.keys(e);for(let n of i)s[n]=[];for(let n=0;n<i.length;n++){let r=i[n],o=e[r];for(let a=n+1;a<i.length;++a){let c=i[a],g=e[c],h=at(o,g);if(h+g.radius<=o.radius+0.0000000001)s[c].push(r);else if(h+o.radius<=g.radius+0.0000000001)s[r].push(c)}}return s}function se(e,s,i){let n={},r=we(e);for(let o=0;o<s.length;++o){let a=s[o].sets,c={},g={};for(let b=0;b<a.length;++b){c[a[b]]=!0;let _=r[a[b]];for(let M=0;M<_.length;++M)g[_[M]]=!0}let h=[],l=[];for(let b in e)if(b in c)h.push(e[b]);else if(!(b in g))l.push(e[b]);let I=ne(h,l,i);if(n[a]=I,I.disjoint&&s[o].size>0)console.log("WARNING: area "+a+" not represented on screen")}return n}function _e(e,s,i){let n=[];return n.push(`
1
+ import{t,X,vr,u,d,M,x,F,C,S,E,T,A,L,R,p,V,U,m}from"./chunk-b5zf1hs3.js";var fe=(e,s)=>vr(e,"a",-s),wt=fe;function It(e,s){let i=de(e),n=i.filter((c)=>he(c,e)),r=0,o=0,a=[];if(n.length>1){let c=Kt(n);for(let h=0;h<n.length;++h){let l=n[h];l.angle=Math.atan2(l.x-c.x,l.y-c.y)}n.sort((h,l)=>l.angle-h.angle);let g=n[n.length-1];for(let h=0;h<n.length;++h){let l=n[h];o+=(g.x+l.x)*(l.y-g.y);let I={x:(l.x+g.x)/2,y:(l.y+g.y)/2},b=null;for(let z=0;z<l.parentIndex.length;++z)if(g.parentIndex.includes(l.parentIndex[z])){let w=e[l.parentIndex[z]],j=Math.atan2(l.x-w.x,l.y-w.y),G=Math.atan2(g.x-w.x,g.y-w.y),B=G-j;if(B<0)B+=2*Math.PI;let P=G-B/2,v=at(I,{x:w.x+w.radius*Math.sin(P),y:w.y+w.radius*Math.cos(P)});if(v>w.radius*2)v=w.radius*2;if(b==null||b.width>v)b={circle:w,width:v,p1:l,p2:g,large:v>w.radius,sweep:!0}}if(b!=null)a.push(b),r+=Tt(b.circle.radius,b.width),g=l}}else{let c=e[0];for(let h=1;h<e.length;++h)if(e[h].radius<c.radius)c=e[h];let g=!1;for(let h=0;h<e.length;++h)if(at(e[h],c)>Math.abs(c.radius-e[h].radius)){g=!0;break}if(g)r=o=0;else r=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-0.0000000001,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0})}if(o/=2,s)s.area=r+o,s.arcArea=r,s.polygonArea=o,s.arcs=a,s.innerPoints=n,s.intersectionPoints=i;return r+o}function he(e,s){return s.every((i)=>at(e,i)<i.radius+0.0000000001)}function de(e){let s=[];for(let i=0;i<e.length;++i)for(let n=i+1;n<e.length;++n){let r=Wt(e[i],e[n]);for(let o of r)o.parentIndex=[i,n],s.push(o)}return s}function Tt(e,s){return e*e*Math.acos(1-s/e)-(e-s)*Math.sqrt(s*(2*e-s))}function at(e,s){return Math.sqrt((e.x-s.x)*(e.x-s.x)+(e.y-s.y)*(e.y-s.y))}function Nt(e,s,i){if(i>=e+s)return 0;if(i<=Math.abs(e-s))return Math.PI*Math.min(e,s)*Math.min(e,s);let n=e-(i*i-s*s+e*e)/(2*i),r=s-(i*i-e*e+s*s)/(2*i);return Tt(e,n)+Tt(s,r)}function Wt(e,s){let i=at(e,s),n=e.radius,r=s.radius;if(i>=n+r||i<=Math.abs(n-r))return[];let o=(n*n-r*r+i*i)/(2*i),a=Math.sqrt(n*n-o*o),c=e.x+o*(s.x-e.x)/i,g=e.y+o*(s.y-e.y)/i,h=-(s.y-e.y)*(a/i),l=-(s.x-e.x)*(a/i);return[{x:c+h,y:g-l},{x:c-h,y:g+l}]}function Kt(e){let s={x:0,y:0};for(let i of e)s.x+=i.x,s.y+=i.y;return s.x/=e.length,s.y/=e.length,s}function ge(e,s,i,n){n=n||{};let r=n.maxIterations||100,o=n.tolerance||0.0000000001,a=e(s),c=e(i),g=i-s;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return s;if(c===0)return i;for(let h=0;h<r;++h){g/=2;let l=s+g,I=e(l);if(I*a>=0)s=l;if(Math.abs(g)<o||I===0)return l}return s+g}function zt(e){let s=Array(e);for(let i=0;i<e;++i)s[i]=0;return s}function Ut(e,s){return zt(e).map(()=>zt(s))}function mt(e,s){let i=0;for(let n=0;n<e.length;++n)i+=e[n]*s[n];return i}function At(e){return Math.sqrt(mt(e,e))}function Ct(e,s,i){for(let n=0;n<s.length;++n)e[n]=s[n]*i}function xt(e,s,i,n,r){for(let o=0;o<e.length;++o)e[o]=s*i[o]+n*r[o]}function Ht(e,s,i){i=i||{};let n=i.maxIterations||s.length*200,r=i.nonZeroDelta||1.05,o=i.zeroDelta||0.001,a=i.minErrorDelta||0.000001,c=i.minErrorDelta||0.00001,g=i.rho!==void 0?i.rho:1,h=i.chi!==void 0?i.chi:2,l=i.psi!==void 0?i.psi:-0.5,I=i.sigma!==void 0?i.sigma:0.5,b,z=s.length,w=Array(z+1);w[0]=s,w[0].fx=e(s),w[0].id=0;for(let D=0;D<z;++D){let f=s.slice();f[D]=f[D]?f[D]*r:o,w[D+1]=f,w[D+1].fx=e(f),w[D+1].id=D+1}function j(D){for(let f=0;f<D.length;f++)w[z][f]=D[f];w[z].fx=D.fx}let G=(D,f)=>D.fx-f.fx,B=s.slice(),P=s.slice(),v=s.slice(),_=s.slice();for(let D=0;D<n;++D){if(w.sort(G),i.history){let k=w.map((y)=>{let H=y.slice();return H.fx=y.fx,H.id=y.id,H});k.sort((y,H)=>y.id-H.id),i.history.push({x:w[0].slice(),fx:w[0].fx,simplex:k})}b=0;for(let k=0;k<z;++k)b=Math.max(b,Math.abs(w[0][k]-w[1][k]));if(Math.abs(w[0].fx-w[z].fx)<a&&b<c)break;for(let k=0;k<z;++k){B[k]=0;for(let y=0;y<z;++y)B[k]+=w[y][k];B[k]/=z}let f=w[z];if(xt(P,1+g,B,-g,f),P.fx=e(P),P.fx<w[0].fx)if(xt(_,1+h,B,-h,f),_.fx=e(_),_.fx<P.fx)j(_);else j(P);else if(P.fx>=w[z-1].fx){let k=!1;if(P.fx>f.fx)if(xt(v,1+l,B,-l,f),v.fx=e(v),v.fx<f.fx)j(v);else k=!0;else if(xt(v,1-l*g,B,l*g,f),v.fx=e(v),v.fx<P.fx)j(v);else k=!0;if(k){if(I>=1)break;for(let y=1;y<w.length;++y)xt(w[y],1-I,w[0],I,w[y]),w[y].fx=e(w[y])}}else j(P)}return w.sort(G),{fx:w[0].fx,x:w[0]}}function xe(e,s,i,n,r,o,a){let c=i.fx,g=mt(i.fxprime,s),h=c,l=c,I=g,b=0;r=r||1,o=o||0.000001,a=a||0.1;function z(w,j,G){for(let B=0;B<16;++B)if(r=(w+j)/2,xt(n.x,1,i.x,r,s),h=n.fx=e(n.x,n.fxprime),I=mt(n.fxprime,s),h>c+o*r*g||h>=G)j=r;else{if(Math.abs(I)<=-a*g)return r;if(I*(j-w)>=0)j=w;w=r,G=h}return 0}for(let w=0;w<10;++w){if(xt(n.x,1,i.x,r,s),h=n.fx=e(n.x,n.fxprime),I=mt(n.fxprime,s),h>c+o*r*g||w&&h>=l)return z(b,r,l);if(Math.abs(I)<=-a*g)return r;if(I>=0)return z(r,b,h);l=h,b=r,r*=2}return r}function ye(e,s,i){let n={x:s.slice(),fx:0,fxprime:s.slice()},r={x:s.slice(),fx:0,fxprime:s.slice()},o=s.slice(),a,c,g=1,h;i=i||{},h=i.maxIterations||s.length*20,n.fx=e(n.x,n.fxprime),a=n.fxprime.slice(),Ct(a,n.fxprime,-1);for(let l=0;l<h;++l){if(g=xe(e,a,n,r,g),i.history)i.history.push({x:n.x.slice(),fx:n.fx,fxprime:n.fxprime.slice(),alpha:g});if(!g)Ct(a,n.fxprime,-1);else{xt(o,1,r.fxprime,-1,n.fxprime);let I=mt(n.fxprime,n.fxprime),b=Math.max(0,mt(o,r.fxprime)/I);xt(a,b,a,-1,r.fxprime),c=n,n=r,r=c}if(At(n.fxprime)<=0.00001)break}if(i.history)i.history.push({x:n.x.slice(),fx:n.fx,fxprime:n.fxprime.slice(),alpha:g});return n}function Yt(e,s={}){s.maxIterations=s.maxIterations||500;let i=s.initialLayout||ve,n=s.lossFunction||bt,r=pe(e,s),o=i(r,s),a=Object.keys(o),c=[];for(let l of a)c.push(o[l].x),c.push(o[l].y);let h=Ht((l)=>{let I={};for(let b=0;b<a.length;++b){let z=a[b];I[z]={x:l[2*b],y:l[2*b+1],radius:o[z].radius}}return n(I,r)},c,s).x;for(let l=0;l<a.length;++l){let I=a[l];o[I].x=h[2*l],o[I].y=h[2*l+1]}return o}var Xt=0.0000000001;function Dt(e,s,i){if(Math.min(e,s)*Math.min(e,s)*Math.PI<=i+Xt)return Math.abs(e-s);return ge((n)=>Nt(e,s,n)-i,0,e+s)}function pe(e,s={}){let i=s.distinct,n=e.map((c)=>Object.assign({},c));function r(c){return c.join(";")}if(i){let c=new Map;for(let g of n)for(let h=0;h<g.sets.length;h++){let l=String(g.sets[h]);c.set(l,g.size+(c.get(l)||0));for(let I=h+1;I<g.sets.length;I++){let b=String(g.sets[I]),z=`${l};${b}`,w=`${b};${l}`;c.set(z,g.size+(c.get(z)||0)),c.set(w,g.size+(c.get(w)||0))}}for(let g of n)if(g.sets.length<3)g.size=c.get(r(g.sets))}let o=[],a=new Set;for(let c of n)if(c.sets.length===1)o.push(c.sets[0]);else if(c.sets.length===2){let g=c.sets[0],h=c.sets[1];a.add(r(c.sets)),a.add(r([h,g]))}o.sort((c,g)=>c===g?0:c<g?-1:1);for(let c=0;c<o.length;++c){let g=o[c];for(let h=c+1;h<o.length;++h){let l=o[h];if(!a.has(r([g,l])))n.push({sets:[g,l],size:0})}}return n}function me(e,s,i){let n=Ut(s.length,s.length),r=Ut(s.length,s.length);return e.filter((o)=>o.sets.length===2).forEach((o)=>{let a=i[o.sets[0]],c=i[o.sets[1]],g=Math.sqrt(s[a].size/Math.PI),h=Math.sqrt(s[c].size/Math.PI),l=Dt(g,h,o.size);n[a][c]=n[c][a]=l;let I=0;if(o.size+0.0000000001>=Math.min(s[a].size,s[c].size))I=1;else if(o.size<=0.0000000001)I=-1;r[a][c]=r[c][a]=I}),{distances:n,constraints:r}}function be(e,s,i,n){for(let o=0;o<s.length;++o)s[o]=0;let r=0;for(let o=0;o<i.length;++o){let a=e[2*o],c=e[2*o+1];for(let g=o+1;g<i.length;++g){let h=e[2*g],l=e[2*g+1],I=i[o][g],b=n[o][g],z=(h-a)*(h-a)+(l-c)*(l-c),w=Math.sqrt(z),j=z-I*I;if(b>0&&w<=I||b<0&&w>=I)continue;r+=2*j*j,s[2*o]+=4*j*(a-h),s[2*o+1]+=4*j*(c-l),s[2*g]+=4*j*(h-a),s[2*g+1]+=4*j*(l-c)}}return r}function ve(e,s={}){let i=Ie(e,s),n=s.lossFunction||bt;if(e.length>=8){let r=ke(e,s),o=n(r,e),a=n(i,e);if(o+0.00000001<a)i=r}return i}function ke(e,s={}){let i=s.restarts||10,n=[],r={};for(let b of e)if(b.sets.length===1)r[b.sets[0]]=n.length,n.push(b);let{distances:o,constraints:a}=me(e,n,r),c=At(o.map(At))/o.length;o=o.map((b)=>b.map((z)=>z/c));let g=(b,z)=>be(b,z,o,a),h=null;for(let b=0;b<i;++b){let z=zt(o.length*2).map(Math.random),w=ye(g,z,s);if(!h||w.fx<h.fx)h=w}let l=h.x,I={};for(let b=0;b<n.length;++b){let z=n[b];I[z.sets[0]]={x:l[2*b]*c,y:l[2*b+1]*c,radius:Math.sqrt(z.size/Math.PI)}}if(s.history)for(let b of s.history)Ct(b.x,c);return I}function Ie(e,s){let i=s&&s.lossFunction?s.lossFunction:bt,n={},r={};for(let I of e)if(I.sets.length===1){let b=I.sets[0];n[b]={x:10000000000,y:10000000000,rowid:n.length,size:I.size,radius:Math.sqrt(I.size/Math.PI)},r[b]=[]}e=e.filter((I)=>I.sets.length===2);for(let I of e){let b=I.weight!=null?I.weight:1,z=I.sets[0],w=I.sets[1];if(I.size+Xt>=Math.min(n[z].size,n[w].size))b=0;r[z].push({set:w,size:I.size,weight:b}),r[w].push({set:z,size:I.size,weight:b})}let o=[];Object.keys(r).forEach((I)=>{let b=0;for(let z=0;z<r[I].length;++z)b+=r[I][z].size*r[I][z].weight;o.push({set:I,size:b})});function a(I,b){return b.size-I.size}o.sort(a);let c={};function g(I){return I.set in c}function h(I,b){n[b].x=I.x,n[b].y=I.y,c[b]=!0}h({x:0,y:0},o[0].set);for(let I=1;I<o.length;++I){let b=o[I].set,z=r[b].filter(g),w=n[b];if(z.sort(a),z.length===0)throw"ERROR: missing pairwise overlap information";let j=[];for(var l=0;l<z.length;++l){let P=n[z[l].set],v=Dt(w.radius,P.radius,z[l].size);j.push({x:P.x+v,y:P.y}),j.push({x:P.x-v,y:P.y}),j.push({y:P.y+v,x:P.x}),j.push({y:P.y-v,x:P.x});for(let _=l+1;_<z.length;++_){let D=n[z[_].set],f=Dt(w.radius,D.radius,z[_].size),k=Wt({x:P.x,y:P.y,radius:v},{x:D.x,y:D.y,radius:f});j.push(...k)}}let G=100000000000000000000000000000000000000000000000000,B=j[0];for(let P of j){n[b].x=P.x,n[b].y=P.y;let v=i(n,e);if(v<G)G=v,B=P}h(B,b)}return n}function bt(e,s){let i=0;for(let n of s){if(n.sets.length===1)continue;let r;if(n.sets.length===2){let a=e[n.sets[0]],c=e[n.sets[1]];r=Nt(a.radius,c.radius,at(a,c))}else r=It(n.sets.map((a)=>e[a]));let o=n.weight!=null?n.weight:1;i+=o*(r-n.size)*(r-n.size)}return i}function Zt(e,s){let i=0;for(let n of s){if(n.sets.length===1)continue;let r;if(n.sets.length===2){let c=e[n.sets[0]],g=e[n.sets[1]];r=Nt(c.radius,g.radius,at(c,g))}else r=It(n.sets.map((c)=>e[c]));let o=n.weight!=null?n.weight:1,a=Math.log((r+1)/(n.size+1));i+=o*a*a}return i}function Me(e,s,i){if(i==null)e.sort((r,o)=>o.radius-r.radius);else e.sort(i);if(e.length>0){let r=e[0].x,o=e[0].y;for(let a of e)a.x-=r,a.y-=o}if(e.length===2){if(at(e[0],e[1])<Math.abs(e[1].radius-e[0].radius))e[1].x=e[0].x+e[0].radius-e[1].radius-0.0000000001,e[1].y=e[0].y}if(e.length>1){let r=Math.atan2(e[1].x,e[1].y)-s,o=Math.cos(r),a=Math.sin(r);for(let c of e){let{x:g,y:h}=c;c.x=o*g-a*h,c.y=a*g+o*h}}if(e.length>2){let r=Math.atan2(e[2].x,e[2].y)-s;while(r<0)r+=2*Math.PI;while(r>2*Math.PI)r-=2*Math.PI;if(r>Math.PI){let o=e[1].y/(0.0000000001+e[1].x);for(let a of e){var n=(a.x+o*a.y)/(1+o*o);a.x=2*n-a.x,a.y=2*n*o-a.y}}}}function Se(e){e.forEach((r)=>{r.parent=r});function s(r){if(r.parent!==r)r.parent=s(r.parent);return r.parent}function i(r,o){let a=s(r),c=s(o);a.parent=c}for(let r=0;r<e.length;++r)for(let o=r+1;o<e.length;++o){let a=e[r].radius+e[o].radius;if(at(e[r],e[o])+0.0000000001<a)i(e[o],e[r])}let n=new Map;for(let r=0;r<e.length;++r){let o=s(e[r]).parent.setid;if(!n.has(o))n.set(o,[]);n.get(o).push(e[r])}return e.forEach((r)=>{delete r.parent}),Array.from(n.values())}function Rt(e){let s=(i)=>{let n=e.reduce((o,a)=>Math.max(o,a[i]+a.radius),Number.NEGATIVE_INFINITY),r=e.reduce((o,a)=>Math.min(o,a[i]-a.radius),Number.POSITIVE_INFINITY);return{max:n,min:r}};return{xRange:s("x"),yRange:s("y")}}function Jt(e,s,i){if(s==null)s=Math.PI/2;let n=te(e).map((h)=>Object.assign({},h)),r=Se(n);for(let h of r){Me(h,s,i);let l=Rt(h);h.size=(l.xRange.max-l.xRange.min)*(l.yRange.max-l.yRange.min),h.bounds=l}r.sort((h,l)=>l.size-h.size),n=r[0];let o=n.bounds,a=(o.xRange.max-o.xRange.min)/50;function c(h,l,I){if(!h)return;let b=h.bounds,z,w;if(l)z=o.xRange.max-b.xRange.min+a;else{z=o.xRange.max-b.xRange.max;let j=(b.xRange.max-b.xRange.min)/2-(o.xRange.max-o.xRange.min)/2;if(j<0)z+=j}if(I)w=o.yRange.max-b.yRange.min+a;else{w=o.yRange.max-b.yRange.max;let j=(b.yRange.max-b.yRange.min)/2-(o.yRange.max-o.yRange.min)/2;if(j<0)w+=j}for(let j of h)j.x+=z,j.y+=w,n.push(j)}let g=1;while(g<r.length)c(r[g],!0,!1),c(r[g+1],!1,!0),c(r[g+2],!0,!0),g+=3,o=Rt(n);return $t(n)}function Qt(e,s,i,n,r){let o=te(e);s-=2*n,i-=2*n;let{xRange:a,yRange:c}=Rt(o);if(a.max===a.min||c.max===c.min)return console.log("not scaling solution: zero size detected"),e;let g,h;if(r){let z=Math.sqrt(r/Math.PI)*2;g=s/z,h=i/z}else g=s/(a.max-a.min),h=i/(c.max-c.min);let l=Math.min(h,g),I=(s-(a.max-a.min)*l)/2,b=(i-(c.max-c.min)*l)/2;return $t(o.map((z)=>({radius:l*z.radius,x:n+I+(z.x-a.min)*l,y:n+b+(z.y-c.min)*l,setid:z.setid})))}function $t(e){let s={};for(let i of e)s[i.setid]=i;return s}function te(e){return Object.keys(e).map((i)=>Object.assign(e[i],{setid:i}))}function ee(e={}){let s=!1,i=600,n=350,r=15,o=1000,a=Math.PI/2,c=!0,g=null,h=!0,l=!0,I=null,b=null,z=!1,w=null,j=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,G={},B=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],P=0,v=function(k){if(k in G)return G[k];var y=G[k]=B[P];if(P+=1,P>=B.length)P=0;return y},_=Yt,D=bt;function f(k){let y=k.datum(),H=new Set;y.forEach((N)=>{if(N.size==0&&N.sets.length==1)H.add(N.sets[0])}),y=y.filter((N)=>!N.sets.some((Q)=>H.has(Q)));let O={},Y={};if(y.length>0){let N=_(y,{lossFunction:D,distinct:z});if(c)N=Jt(N,a,b);O=Qt(N,i,n,r,g),Y=se(O,y,j)}let lt={};y.forEach((N)=>{if(N.label)lt[N.sets]=N.label});function st(N){if(N.sets in lt)return lt[N.sets];if(N.sets.length==1)return""+N.sets[0]}k.selectAll("svg").data([O]).enter().append("svg");let J=k.select("svg");if(s)J.attr("viewBox",`0 0 ${i} ${n}`);else J.attr("width",i).attr("height",n);let K={},Z=!1;J.selectAll(".venn-area path").each(function(N){let Q=this.getAttribute("d");if(N.sets.length==1&&Q&&!z)Z=!0,K[N.sets[0]]=Ee(Q)});function q(N){return(Q)=>{let pt=N.sets.map((gt)=>{let dt=K[gt],ot=O[gt];if(!dt)dt={x:i/2,y:n/2,radius:1};if(!ot)ot={x:i/2,y:n/2,radius:1};return{x:dt.x*(1-Q)+ot.x*Q,y:dt.y*(1-Q)+ot.y*Q,radius:dt.radius*(1-Q)+ot.radius*Q}});return Gt(pt,w)}}let tt=J.selectAll(".venn-area").data(y,(N)=>N.sets),it=tt.enter().append("g").attr("class",(N)=>`venn-area venn-${N.sets.length==1?"circle":"intersection"}${N.colour||N.color?" venn-coloured":""}`).attr("data-venn-sets",(N)=>N.sets.join("_")),et=it.append("path"),ct=it.append("text").attr("class","label").text((N)=>st(N)).attr("text-anchor","middle").attr("dy",".35em").attr("x",i/2).attr("y",n/2);if(l)et.style("fill-opacity","0").filter((N)=>N.sets.length==1).style("fill",(N)=>N.colour?N.colour:N.color?N.color:v(N.sets)).style("fill-opacity",".25"),ct.style("fill",(N)=>{if(N.colour||N.color)return"#FFF";if(e.textFill)return e.textFill;return N.sets.length==1?v(N.sets):"#444"});function rt(N){if(typeof N.transition==="function")return N.transition("venn").duration(o);return N}let nt=k;if(Z&&typeof nt.transition==="function")nt=rt(k),nt.selectAll("path").attrTween("d",q);else nt.selectAll("path").attr("d",(N)=>Gt(N.sets.map((Q)=>O[Q])),w);let W=nt.selectAll("text").filter((N)=>(N.sets in Y)).text((N)=>st(N)).attr("x",(N)=>Math.floor(Y[N.sets].x)).attr("y",(N)=>Math.floor(Y[N.sets].y));if(h)if(Z)if("on"in W)W.on("end",_t(O,st));else W.each("end",_t(O,st));else W.each(_t(O,st));let ht=rt(tt.exit()).remove();if(typeof tt.transition==="function")ht.selectAll("path").attrTween("d",q);let ft=ht.selectAll("text").attr("x",i/2).attr("y",n/2);if(I!==null)ct.style("font-size","0px"),W.style("font-size",I),ft.style("font-size","0px");return{circles:O,textCentres:Y,nodes:tt,enter:it,update:nt,exit:ht}}return f.wrap=function(k){if(!arguments.length)return h;return h=k,f},f.useViewBox=function(){return s=!0,f},f.width=function(k){if(!arguments.length)return i;return i=k,f},f.height=function(k){if(!arguments.length)return n;return n=k,f},f.padding=function(k){if(!arguments.length)return r;return r=k,f},f.distinct=function(k){if(!arguments.length)return z;return z=k,f},f.colours=function(k){if(!arguments.length)return v;return v=k,f},f.colors=function(k){if(!arguments.length)return v;return v=k,f},f.fontSize=function(k){if(!arguments.length)return I;return I=k,f},f.round=function(k){if(!arguments.length)return w;return w=k,f},f.duration=function(k){if(!arguments.length)return o;return o=k,f},f.layoutFunction=function(k){if(!arguments.length)return _;return _=k,f},f.normalize=function(k){if(!arguments.length)return c;return c=k,f},f.scaleToFit=function(k){if(!arguments.length)return g;return g=k,f},f.styled=function(k){if(!arguments.length)return l;return l=k,f},f.orientation=function(k){if(!arguments.length)return a;return a=k,f},f.orientationOrder=function(k){if(!arguments.length)return b;return b=k,f},f.lossFunction=function(k){if(!arguments.length)return D;return D=k==="default"?bt:k==="logRatio"?Zt:k,f},f}function _t(e,s){return function(i){let n=this,r=e[i.sets[0]].radius||50,o=s(i)||"",a=o.split(/\s+/).reverse(),c=3,g=(o.length+a.length)/3,h=a.pop(),l=[h],I=0,b=1.1;n.textContent=null;let z=[];function w(v){let _=n.ownerDocument.createElementNS(n.namespaceURI,"tspan");return _.textContent=v,z.push(_),n.append(_),_}let j=w(h);while(!0){if(h=a.pop(),!h)break;l.push(h);let v=l.join(" ");if(j.textContent=v,v.length>g&&j.getComputedTextLength()>r)l.pop(),j.textContent=l.join(" "),l=[h],j=w(h),I++}let G=0.35-I*b/2,B=n.getAttribute("x"),P=n.getAttribute("y");z.forEach((v,_)=>{v.setAttribute("x",B),v.setAttribute("y",P),v.setAttribute("dy",`${G+_*b}em`)})}}function Et(e,s,i){let n=s[0].radius-at(s[0],e);for(let r=1;r<s.length;++r){let o=s[r].radius-at(s[r],e);if(o<=n)n=o}for(let r=0;r<i.length;++r){let o=at(i[r],e)-i[r].radius;if(o<=n)n=o}return n}function ne(e,s,i){let n=[];for(let l of e)n.push({x:l.x,y:l.y}),n.push({x:l.x+l.radius/2,y:l.y}),n.push({x:l.x-l.radius/2,y:l.y}),n.push({x:l.x,y:l.y+l.radius/2}),n.push({x:l.x,y:l.y-l.radius/2});let r=n[0],o=Et(n[0],e,s);for(let l=1;l<n.length;++l){let I=Et(n[l],e,s);if(I>=o)r=n[l],o=I}let a=Ht((l)=>-1*Et({x:l[0],y:l[1]},e,s),[r.x,r.y],{maxIterations:500,minErrorDelta:0.0000000001}).x,c={x:i?0:a[0],y:a[1]},g=!0;for(let l of e)if(at(c,l)>l.radius){g=!1;break}for(let l of s)if(at(c,l)<l.radius){g=!1;break}if(g)return c;if(e.length==1)return{x:e[0].x,y:e[0].y};let h={};if(It(e,h),h.arcs.length===0)return{x:0,y:-1000,disjoint:!0};if(h.arcs.length==1)return{x:h.arcs[0].circle.x,y:h.arcs[0].circle.y};if(s.length)return ne(e,[]);return Kt(h.arcs.map((l)=>l.p1))}function we(e){let s={},i=Object.keys(e);for(let n of i)s[n]=[];for(let n=0;n<i.length;n++){let r=i[n],o=e[r];for(let a=n+1;a<i.length;++a){let c=i[a],g=e[c],h=at(o,g);if(h+g.radius<=o.radius+0.0000000001)s[c].push(r);else if(h+o.radius<=g.radius+0.0000000001)s[r].push(c)}}return s}function se(e,s,i){let n={},r=we(e);for(let o=0;o<s.length;++o){let a=s[o].sets,c={},g={};for(let b=0;b<a.length;++b){c[a[b]]=!0;let z=r[a[b]];for(let w=0;w<z.length;++w)g[z[w]]=!0}let h=[],l=[];for(let b in e)if(b in c)h.push(e[b]);else if(!(b in g))l.push(e[b]);let I=ne(h,l,i);if(n[a]=I,I.disjoint&&s[o].size>0)console.log("WARNING: area "+a+" not represented on screen")}return n}function _e(e,s,i){let n=[];return n.push(`
2
2
  M`,e,s),n.push(`
3
3
  m`,-i,0),n.push(`
4
4
  a`,i,i,0,1,0,i*2,0),n.push(`
5
5
  a`,i,i,0,1,0,-i*2,0),n.join(" ")}function Ee(e){let s=e.split(" ");return{x:Number.parseFloat(s[1]),y:Number.parseFloat(s[2]),radius:-Number.parseFloat(s[4])}}function ie(e){if(e.length===0)return[];let s={};return It(e,s),s.arcs}function re(e,s){if(e.length===0)return"M 0 0";let i=Math.pow(10,s||0),n=s!=null?(o)=>Math.round(o*i)/i:(o)=>o;if(e.length==1){let o=e[0].circle;return _e(n(o.x),n(o.y),n(o.radius))}let r=[`
6
6
  M`,n(e[0].p2.x),n(e[0].p2.y)];for(let o of e){let a=n(o.circle.radius);r.push(`
7
- A`,a,a,0,o.large?1:0,o.sweep?1:0,n(o.p1.x),n(o.p1.y))}return r.join(" ")}function Gt(e,s){return re(ie(e),s)}function oe(e,s={}){let{lossFunction:i,layoutFunction:n=Yt,normalize:r=!0,orientation:o=Math.PI/2,orientationOrder:a,width:c=600,height:g=350,padding:h=15,scaleToFit:l=!1,symmetricalTextCentre:I=!1,distinct:b,round:_=2}=s,M=n(e,{lossFunction:i==="default"||!i?bt:i==="logRatio"?Zt:i,distinct:b});if(r)M=Jt(M,o,a);let j=Qt(M,c,g,h,l),G=se(j,e,I),B=new Map(Object.keys(j).map((w)=>[w,{set:w,x:j[w].x,y:j[w].y,radius:j[w].radius}])),P=e.map((w)=>{let z=w.sets.map((y)=>B.get(y)),f=ie(z),k=re(f,_);return{circles:z,arcs:f,path:k,area:w,has:new Set(w.sets)}});function v(w){let z="";for(let f of P)if(f.has.size>w.length&&w.every((k)=>f.has.has(k)))z+=" "+f.path;return z}return P.map(({circles:w,arcs:z,path:f,area:k})=>({data:k,text:G[k.sets],circles:w,arcs:z,path:f,distinctPath:f+v(k.sets)}))}var Ot=function(){var e=t(function(P,v,w,z){for(w=w||{},z=P.length;z--;w[P[z]]=v);return w},"o"),s=[5,8],i=[7,8,11,12,17,19,22,24],n=[1,17],r=[1,18],o=[7,8,11,12,14,15,16,17,19,20,21,22,24,27],a=[1,31],c=[1,39],g=[7,8,11,12,17,19,22,24,27],h=[1,57],l=[1,56],I=[1,58],b=[1,59],_=[1,60],M=[7,8,11,12,16,17,19,20,22,24,27,31,32,33],j={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,start:3,optNewlines:4,VENN:5,document:6,EOF:7,NEWLINE:8,line:9,statement:10,TITLE:11,SET:12,identifier:13,BRACKET_LABEL:14,COLON:15,NUMERIC:16,UNION:17,identifierList:18,TEXT:19,IDENTIFIER:20,STRING:21,INDENT_TEXT:22,indentedTextTail:23,STYLE:24,stylesOpt:25,styleField:26,COMMA:27,styleValue:28,valueTokens:29,valueToken:30,HEXCOLOR:31,RGBCOLOR:32,RGBACOLOR:33,$accept:0,$end:1},terminals_:{2:"error",5:"VENN",7:"EOF",8:"NEWLINE",11:"TITLE",12:"SET",14:"BRACKET_LABEL",15:"COLON",16:"NUMERIC",17:"UNION",19:"TEXT",20:"IDENTIFIER",21:"STRING",22:"INDENT_TEXT",24:"STYLE",27:"COMMA",31:"HEXCOLOR",32:"RGBCOLOR",33:"RGBACOLOR"},productions_:[0,[3,4],[4,0],[4,2],[6,0],[6,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,5],[10,2],[10,3],[10,4],[10,5],[10,3],[10,3],[10,3],[10,4],[10,4],[10,2],[10,3],[23,1],[23,1],[23,1],[23,2],[23,2],[25,1],[25,3],[26,3],[28,1],[28,1],[29,1],[29,2],[30,1],[30,1],[30,1],[30,1],[30,1],[18,1],[18,3],[13,1],[13,1]],performAction:t(function(v,w,z,f,k,y,Y){var O=y.length-1;switch(k){case 1:return y[O-1];case 2:case 3:case 4:this.$=[];break;case 5:y[O-1].push(y[O]),this.$=y[O-1];break;case 6:this.$=[];break;case 7:case 22:case 32:case 36:case 37:case 38:case 39:case 40:this.$=y[O];break;case 8:f.setDiagramTitle(y[O].substr(6)),this.$=y[O].substr(6);break;case 9:if(f.addSubsetData([y[O]],void 0,void 0),f.setIndentMode)f.setIndentMode(!0);break;case 10:if(f.addSubsetData([y[O-1]],y[O],void 0),f.setIndentMode)f.setIndentMode(!0);break;case 11:if(f.addSubsetData([y[O-2]],void 0,parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 12:if(f.addSubsetData([y[O-3]],y[O-2],parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 13:if(y[O].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O]);if(f.addSubsetData(y[O],void 0,void 0),f.setIndentMode)f.setIndentMode(!0);break;case 14:if(y[O-1].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-1]);if(f.addSubsetData(y[O-1],y[O],void 0),f.setIndentMode)f.setIndentMode(!0);break;case 15:if(y[O-2].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-2]);if(f.addSubsetData(y[O-2],void 0,parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 16:if(y[O-3].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-3]);if(f.addSubsetData(y[O-3],y[O-2],parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 17:case 18:case 19:f.addTextData(y[O-1],y[O],void 0);break;case 20:case 21:f.addTextData(y[O-2],y[O-1],y[O]);break;case 23:f.addStyleData(y[O-1],y[O]);break;case 24:case 25:case 26:var X=f.getCurrentSets();if(!X)throw Error("text requires set");f.addTextData(X,y[O],void 0);break;case 27:case 28:var X=f.getCurrentSets();if(!X)throw Error("text requires set");f.addTextData(X,y[O-1],y[O]);break;case 29:case 41:this.$=[y[O]];break;case 30:case 42:this.$=[...y[O-2],y[O]];break;case 31:this.$=[y[O-2],y[O]];break;case 33:this.$=y[O].join(" ");break;case 34:this.$=[y[O]];break;case 35:y[O-1].push(y[O]),this.$=y[O-1];break;case 43:case 44:this.$=y[O];break}},"anonymous"),table:[e(s,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],8:[1,4]},e(i,[2,4],{6:5}),e(s,[2,3]),{7:[1,6],8:[1,8],9:7,10:9,11:[1,10],12:[1,11],17:[1,12],19:[1,13],22:[1,14],24:[1,15]},{1:[2,1]},e(i,[2,5]),e(i,[2,6]),e(i,[2,7]),e(i,[2,8]),{13:16,20:n,21:r},{13:20,18:19,20:n,21:r},{13:20,18:21,20:n,21:r},{16:[1,25],20:[1,23],21:[1,24],23:22},{13:20,18:26,20:n,21:r},e(i,[2,9],{14:[1,27],15:[1,28]}),e(o,[2,43]),e(o,[2,44]),e(i,[2,13],{14:[1,29],15:[1,30],27:a}),e(o,[2,41]),{16:[1,34],20:[1,32],21:[1,33],27:a},e(i,[2,22]),e(i,[2,24],{14:[1,35]}),e(i,[2,25],{14:[1,36]}),e(i,[2,26]),{20:c,25:37,26:38,27:a},e(i,[2,10],{15:[1,40]}),{16:[1,41]},e(i,[2,14],{15:[1,42]}),{16:[1,43]},{13:44,20:n,21:r},e(i,[2,17],{14:[1,45]}),e(i,[2,18],{14:[1,46]}),e(i,[2,19]),e(i,[2,27]),e(i,[2,28]),e(i,[2,23],{27:[1,47]}),e(g,[2,29]),{15:[1,48]},{16:[1,49]},e(i,[2,11]),{16:[1,50]},e(i,[2,15]),e(o,[2,42]),e(i,[2,20]),e(i,[2,21]),{20:c,26:51},{16:h,20:l,21:[1,53],28:52,29:54,30:55,31:I,32:b,33:_},e(i,[2,12]),e(i,[2,16]),e(g,[2,30]),e(g,[2,31]),e(g,[2,32]),e(g,[2,33],{30:61,16:h,20:l,31:I,32:b,33:_}),e(M,[2,34]),e(M,[2,36]),e(M,[2,37]),e(M,[2,38]),e(M,[2,39]),e(M,[2,40]),e(M,[2,35])],defaultActions:{6:[2,1]},parseError:t(function(v,w){if(w.recoverable)this.trace(v);else{var z=Error(v);throw z.hash=w,z}},"parseError"),parse:t(function(v){var w=this,z=[0],f=[],k=[null],y=[],Y=this.table,O="",X=0,lt=0,st=0,J=2,H=1,Z=y.slice.call(arguments,1),q=Object.create(this.lexer),tt={yy:{}};for(var it in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,it))tt.yy[it]=this.yy[it];if(q.setInput(v,tt.yy),tt.yy.lexer=q,tt.yy.parser=this,typeof q.yylloc>"u")q.yylloc={};var et=q.yylloc;y.push(et);var ct=q.options&&q.options.ranges;if(typeof tt.yy.parseError==="function")this.parseError=tt.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function rt(ut){z.length=z.length-2*ut,k.length=k.length-ut,y.length=y.length-ut}t(rt,"popStack");function nt(){var ut=f.pop()||q.lex()||H;if(typeof ut!=="number"){if(ut instanceof Array)f=ut,ut=f.pop();ut=w.symbols_[ut]||ut}return ut}t(nt,"lex");var W,ht,ft,D,Q,pt,gt={},dt,ot,qt,kt;while(!0){if(ft=z[z.length-1],this.defaultActions[ft])D=this.defaultActions[ft];else{if(W===null||typeof W>"u")W=nt();D=Y[ft]&&Y[ft][W]}if(typeof D>"u"||!D.length||!D[0]){var St="";kt=[];for(dt in Y[ft])if(this.terminals_[dt]&&dt>J)kt.push("'"+this.terminals_[dt]+"'");if(q.showPosition)St="Parse error on line "+(X+1)+`:
7
+ A`,a,a,0,o.large?1:0,o.sweep?1:0,n(o.p1.x),n(o.p1.y))}return r.join(" ")}function Gt(e,s){return re(ie(e),s)}function oe(e,s={}){let{lossFunction:i,layoutFunction:n=Yt,normalize:r=!0,orientation:o=Math.PI/2,orientationOrder:a,width:c=600,height:g=350,padding:h=15,scaleToFit:l=!1,symmetricalTextCentre:I=!1,distinct:b,round:z=2}=s,w=n(e,{lossFunction:i==="default"||!i?bt:i==="logRatio"?Zt:i,distinct:b});if(r)w=Jt(w,o,a);let j=Qt(w,c,g,h,l),G=se(j,e,I),B=new Map(Object.keys(j).map((_)=>[_,{set:_,x:j[_].x,y:j[_].y,radius:j[_].radius}])),P=e.map((_)=>{let D=_.sets.map((y)=>B.get(y)),f=ie(D),k=re(f,z);return{circles:D,arcs:f,path:k,area:_,has:new Set(_.sets)}});function v(_){let D="";for(let f of P)if(f.has.size>_.length&&_.every((k)=>f.has.has(k)))D+=" "+f.path;return D}return P.map(({circles:_,arcs:D,path:f,area:k})=>({data:k,text:G[k.sets],circles:_,arcs:D,path:f,distinctPath:f+v(k.sets)}))}var Ot=function(){var e=t(function(P,v,_,D){for(_=_||{},D=P.length;D--;_[P[D]]=v);return _},"o"),s=[5,8],i=[7,8,11,12,17,19,22,24],n=[1,17],r=[1,18],o=[7,8,11,12,14,15,16,17,19,20,21,22,24,27],a=[1,31],c=[1,39],g=[7,8,11,12,17,19,22,24,27],h=[1,57],l=[1,56],I=[1,58],b=[1,59],z=[1,60],w=[7,8,11,12,16,17,19,20,22,24,27,31,32,33],j={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,start:3,optNewlines:4,VENN:5,document:6,EOF:7,NEWLINE:8,line:9,statement:10,TITLE:11,SET:12,identifier:13,BRACKET_LABEL:14,COLON:15,NUMERIC:16,UNION:17,identifierList:18,TEXT:19,IDENTIFIER:20,STRING:21,INDENT_TEXT:22,indentedTextTail:23,STYLE:24,stylesOpt:25,styleField:26,COMMA:27,styleValue:28,valueTokens:29,valueToken:30,HEXCOLOR:31,RGBCOLOR:32,RGBACOLOR:33,$accept:0,$end:1},terminals_:{2:"error",5:"VENN",7:"EOF",8:"NEWLINE",11:"TITLE",12:"SET",14:"BRACKET_LABEL",15:"COLON",16:"NUMERIC",17:"UNION",19:"TEXT",20:"IDENTIFIER",21:"STRING",22:"INDENT_TEXT",24:"STYLE",27:"COMMA",31:"HEXCOLOR",32:"RGBCOLOR",33:"RGBACOLOR"},productions_:[0,[3,4],[4,0],[4,2],[6,0],[6,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,5],[10,2],[10,3],[10,4],[10,5],[10,3],[10,3],[10,3],[10,4],[10,4],[10,2],[10,3],[23,1],[23,1],[23,1],[23,2],[23,2],[25,1],[25,3],[26,3],[28,1],[28,1],[29,1],[29,2],[30,1],[30,1],[30,1],[30,1],[30,1],[18,1],[18,3],[13,1],[13,1]],performAction:t(function(v,_,D,f,k,y,H){var O=y.length-1;switch(k){case 1:return y[O-1];case 2:case 3:case 4:this.$=[];break;case 5:y[O-1].push(y[O]),this.$=y[O-1];break;case 6:this.$=[];break;case 7:case 22:case 32:case 36:case 37:case 38:case 39:case 40:this.$=y[O];break;case 8:f.setDiagramTitle(y[O].substr(6)),this.$=y[O].substr(6);break;case 9:if(f.addSubsetData([y[O]],void 0,void 0),f.setIndentMode)f.setIndentMode(!0);break;case 10:if(f.addSubsetData([y[O-1]],y[O],void 0),f.setIndentMode)f.setIndentMode(!0);break;case 11:if(f.addSubsetData([y[O-2]],void 0,parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 12:if(f.addSubsetData([y[O-3]],y[O-2],parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 13:if(y[O].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O]);if(f.addSubsetData(y[O],void 0,void 0),f.setIndentMode)f.setIndentMode(!0);break;case 14:if(y[O-1].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-1]);if(f.addSubsetData(y[O-1],y[O],void 0),f.setIndentMode)f.setIndentMode(!0);break;case 15:if(y[O-2].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-2]);if(f.addSubsetData(y[O-2],void 0,parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 16:if(y[O-3].length<2)throw Error("union requires multiple identifiers");if(f.validateUnionIdentifiers)f.validateUnionIdentifiers(y[O-3]);if(f.addSubsetData(y[O-3],y[O-2],parseFloat(y[O])),f.setIndentMode)f.setIndentMode(!0);break;case 17:case 18:case 19:f.addTextData(y[O-1],y[O],void 0);break;case 20:case 21:f.addTextData(y[O-2],y[O-1],y[O]);break;case 23:f.addStyleData(y[O-1],y[O]);break;case 24:case 25:case 26:var Y=f.getCurrentSets();if(!Y)throw Error("text requires set");f.addTextData(Y,y[O],void 0);break;case 27:case 28:var Y=f.getCurrentSets();if(!Y)throw Error("text requires set");f.addTextData(Y,y[O-1],y[O]);break;case 29:case 41:this.$=[y[O]];break;case 30:case 42:this.$=[...y[O-2],y[O]];break;case 31:this.$=[y[O-2],y[O]];break;case 33:this.$=y[O].join(" ");break;case 34:this.$=[y[O]];break;case 35:y[O-1].push(y[O]),this.$=y[O-1];break;case 43:case 44:this.$=y[O];break}},"anonymous"),table:[e(s,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],8:[1,4]},e(i,[2,4],{6:5}),e(s,[2,3]),{7:[1,6],8:[1,8],9:7,10:9,11:[1,10],12:[1,11],17:[1,12],19:[1,13],22:[1,14],24:[1,15]},{1:[2,1]},e(i,[2,5]),e(i,[2,6]),e(i,[2,7]),e(i,[2,8]),{13:16,20:n,21:r},{13:20,18:19,20:n,21:r},{13:20,18:21,20:n,21:r},{16:[1,25],20:[1,23],21:[1,24],23:22},{13:20,18:26,20:n,21:r},e(i,[2,9],{14:[1,27],15:[1,28]}),e(o,[2,43]),e(o,[2,44]),e(i,[2,13],{14:[1,29],15:[1,30],27:a}),e(o,[2,41]),{16:[1,34],20:[1,32],21:[1,33],27:a},e(i,[2,22]),e(i,[2,24],{14:[1,35]}),e(i,[2,25],{14:[1,36]}),e(i,[2,26]),{20:c,25:37,26:38,27:a},e(i,[2,10],{15:[1,40]}),{16:[1,41]},e(i,[2,14],{15:[1,42]}),{16:[1,43]},{13:44,20:n,21:r},e(i,[2,17],{14:[1,45]}),e(i,[2,18],{14:[1,46]}),e(i,[2,19]),e(i,[2,27]),e(i,[2,28]),e(i,[2,23],{27:[1,47]}),e(g,[2,29]),{15:[1,48]},{16:[1,49]},e(i,[2,11]),{16:[1,50]},e(i,[2,15]),e(o,[2,42]),e(i,[2,20]),e(i,[2,21]),{20:c,26:51},{16:h,20:l,21:[1,53],28:52,29:54,30:55,31:I,32:b,33:z},e(i,[2,12]),e(i,[2,16]),e(g,[2,30]),e(g,[2,31]),e(g,[2,32]),e(g,[2,33],{30:61,16:h,20:l,31:I,32:b,33:z}),e(w,[2,34]),e(w,[2,36]),e(w,[2,37]),e(w,[2,38]),e(w,[2,39]),e(w,[2,40]),e(w,[2,35])],defaultActions:{6:[2,1]},parseError:t(function(v,_){if(_.recoverable)this.trace(v);else{var D=Error(v);throw D.hash=_,D}},"parseError"),parse:t(function(v){var _=this,D=[0],f=[],k=[null],y=[],H=this.table,O="",Y=0,lt=0,st=0,J=2,K=1,Z=y.slice.call(arguments,1),q=Object.create(this.lexer),tt={yy:{}};for(var it in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,it))tt.yy[it]=this.yy[it];if(q.setInput(v,tt.yy),tt.yy.lexer=q,tt.yy.parser=this,typeof q.yylloc>"u")q.yylloc={};var et=q.yylloc;y.push(et);var ct=q.options&&q.options.ranges;if(typeof tt.yy.parseError==="function")this.parseError=tt.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function rt(ut){D.length=D.length-2*ut,k.length=k.length-ut,y.length=y.length-ut}t(rt,"popStack");function nt(){var ut=f.pop()||q.lex()||K;if(typeof ut!=="number"){if(ut instanceof Array)f=ut,ut=f.pop();ut=_.symbols_[ut]||ut}return ut}t(nt,"lex");var W,ht,ft,N,Q,pt,gt={},dt,ot,qt,kt;while(!0){if(ft=D[D.length-1],this.defaultActions[ft])N=this.defaultActions[ft];else{if(W===null||typeof W>"u")W=nt();N=H[ft]&&H[ft][W]}if(typeof N>"u"||!N.length||!N[0]){var St="";kt=[];for(dt in H[ft])if(this.terminals_[dt]&&dt>J)kt.push("'"+this.terminals_[dt]+"'");if(q.showPosition)St="Parse error on line "+(Y+1)+`:
8
8
  `+q.showPosition()+`
9
- Expecting `+kt.join(", ")+", got '"+(this.terminals_[W]||W)+"'";else St="Parse error on line "+(X+1)+": Unexpected "+(W==H?"end of input":"'"+(this.terminals_[W]||W)+"'");this.parseError(St,{text:q.match,token:this.terminals_[W]||W,line:q.yylineno,loc:et,expected:kt})}if(D[0]instanceof Array&&D.length>1)throw Error("Parse Error: multiple actions possible at state: "+ft+", token: "+W);switch(D[0]){case 1:if(z.push(W),k.push(q.yytext),y.push(q.yylloc),z.push(D[1]),W=null,!ht){if(lt=q.yyleng,O=q.yytext,X=q.yylineno,et=q.yylloc,st>0)st--}else W=ht,ht=null;break;case 2:if(ot=this.productions_[D[1]][1],gt.$=k[k.length-ot],gt._$={first_line:y[y.length-(ot||1)].first_line,last_line:y[y.length-1].last_line,first_column:y[y.length-(ot||1)].first_column,last_column:y[y.length-1].last_column},ct)gt._$.range=[y[y.length-(ot||1)].range[0],y[y.length-1].range[1]];if(pt=this.performAction.apply(gt,[O,lt,X,tt.yy,D[1],k,y].concat(Z)),typeof pt<"u")return pt;if(ot)z=z.slice(0,-1*ot*2),k=k.slice(0,-1*ot),y=y.slice(0,-1*ot);z.push(this.productions_[D[1]][0]),k.push(gt.$),y.push(gt._$),qt=Y[z[z.length-2]][z[z.length-1]],z.push(qt);break;case 3:return!0}}return!0},"parse")},G=function(){var P={EOF:1,parseError:t(function(w,z){if(this.yy.parser)this.yy.parser.parseError(w,z);else throw Error(w)},"parseError"),setInput:t(function(v,w){if(this.yy=w||this.yy||{},this._input=v,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];return this.offset=0,this},"setInput"),input:t(function(){var v=this._input[0];this.yytext+=v,this.yyleng++,this.offset++,this.match+=v,this.matched+=v;var w=v.match(/(?:\r\n?|\n).*/g);if(w)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),v},"input"),unput:t(function(v){var w=v.length,z=v.split(/(?:\r\n?|\n)/g);this._input=v+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var f=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),z.length-1)this.yylineno-=z.length-1;var k=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:z?(z.length===f.length?this.yylloc.first_column:0)+f[f.length-z.length].length-z[0].length:this.yylloc.first_column-w},this.options.ranges)this.yylloc.range=[k[0],k[0]+this.yyleng-w];return this.yyleng=this.yytext.length,this},"unput"),more:t(function(){return this._more=!0,this},"more"),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
10
- `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:t(function(v){this.unput(this.match.slice(v))},"less"),pastInput:t(function(){var v=this.matched.substr(0,this.matched.length-this.match.length);return(v.length>20?"...":"")+v.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:t(function(){var v=this.match;if(v.length<20)v+=this._input.substr(0,20-v.length);return(v.substr(0,20)+(v.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:t(function(){var v=this.pastInput(),w=Array(v.length+1).join("-");return v+this.upcomingInput()+`
11
- `+w+"^"},"showPosition"),test_match:t(function(v,w){var z,f,k;if(this.options.backtrack_lexer){if(k={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)k.yylloc.range=this.yylloc.range.slice(0)}if(f=v[0].match(/(?:\r\n?|\n).*/g),f)this.yylineno+=f.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:f?f[f.length-1].length-f[f.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+v[0].length},this.yytext+=v[0],this.match+=v[0],this.matches=v,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(v[0].length),this.matched+=v[0],z=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(z)return z;else if(this._backtrack){for(var y in k)this[y]=k[y];return!1}return!1},"test_match"),next:t(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var v,w,z,f;if(!this._more)this.yytext="",this.match="";var k=this._currentRules();for(var y=0;y<k.length;y++)if(z=this._input.match(this.rules[k[y]]),z&&(!w||z[0].length>w[0].length)){if(w=z,f=y,this.options.backtrack_lexer)if(v=this.test_match(z,k[y]),v!==!1)return v;else if(this._backtrack){w=!1;continue}else return!1;else if(!this.options.flex)break}if(w){if(v=this.test_match(w,k[f]),v!==!1)return v;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
12
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var w=this.next();if(w)return w;else return this.lex()},"lex"),begin:t(function(w){this.conditionStack.push(w)},"begin"),popState:t(function(){var w=this.conditionStack.length-1;if(w>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(w){if(w=this.conditionStack.length-1-Math.abs(w||0),w>=0)return this.conditionStack[w];else return"INITIAL"},"topState"),pushState:t(function(w){this.begin(w)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(w,z,f,k){var y=k;switch(f){case 0:break;case 1:break;case 2:break;case 3:if(w.getIndentMode&&w.getIndentMode())return w.consumeIndentText=!0,this.begin("INITIAL"),22;break;case 4:break;case 5:if(w.setIndentMode)w.setIndentMode(!1);this.begin("INITIAL"),this.unput(z.yytext);break;case 6:return this.begin("bol"),8;break;case 7:break;case 8:break;case 9:return 7;case 10:return 11;case 11:return 5;case 12:return 12;case 13:return 17;case 14:if(w.consumeIndentText)w.consumeIndentText=!1;else return 19;break;case 15:return 24;case 16:return z.yytext=z.yytext.slice(2,-2),14;break;case 17:return z.yytext=z.yytext.slice(1,-1).trim(),14;break;case 18:return 16;case 19:return 31;case 20:return 33;case 21:return 32;case 22:return 20;case 23:return 21;case 24:return 27;case 25:return 15}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[ \t]+(?=[\n\r]))/i,/^(?:[ \t]+(?=text\b))/i,/^(?:[ \t]+)/i,/^(?:[^ \t\n\r])/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[ \t]+)/i,/^(?:$)/i,/^(?:title\s[^#\n;]+)/i,/^(?:venn-beta\b)/i,/^(?:set\b)/i,/^(?:union\b)/i,/^(?:text\b)/i,/^(?:style\b)/i,/^(?:\["[^\"]*"\])/i,/^(?:\[[^\]\"]+\])/i,/^(?:[+-]?(\d+(\.\d+)?|\.\d+))/i,/^(?:#[0-9a-fA-F]{3,8})/i,/^(?:rgba\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:rgb\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:"[^\"]*")/i,/^(?:,)/i,/^(?::)/i],conditions:{bol:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0},INITIAL:{rules:[0,1,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0}}};return P}();j.lexer=G;function B(){this.yy={}}return t(B,"Parser"),B.prototype=j,j.Parser=B,new B}();Ot.parser=Ot;var ze=Ot,Lt=[],jt=[],Ft=[],Pt=new Set,Vt,Bt=!1,Ae=t((e,s,i)=>{let n=Mt(e).sort(),r=i??10/Math.pow(e.length,2);if(Vt=n,n.length===1)Pt.add(n[0]);Lt.push({sets:n,size:r,label:s?vt(s):void 0})},"addSubsetData"),Ce=t(()=>Lt,"getSubsetData"),vt=t((e)=>{let s=e.trim();if(s.length>=2&&s.startsWith('"')&&s.endsWith('"'))return s.slice(1,-1);return s},"normalizeText"),De=t((e)=>e?vt(e):e,"normalizeStyleValue"),Re=t((e,s,i)=>{let n=vt(s);jt.push({sets:Mt(e).sort(),id:n,label:i?vt(i):void 0})},"addTextData"),Ne=t((e,s)=>{let i=Mt(e).sort(),n={};for(let[r,o]of s)n[r]=De(o)??o;Ft.push({targets:i,styles:n})},"addStyleData"),Oe=t(()=>Ft,"getStyleData"),Mt=t((e)=>e.map((s)=>vt(s)),"normalizeIdentifierList"),Le=t((e)=>{let i=Mt(e).filter((n)=>!Pt.has(n));if(i.length>0)throw Error(`unknown set identifier: ${i.join(", ")}`)},"validateUnionIdentifiers"),je=t(()=>jt,"getTextData"),Fe=t(()=>Vt,"getCurrentSets"),Pe=t(()=>Bt,"getIndentMode"),Ve=t((e)=>{Bt=e},"setIndentMode"),Be=N.venn;function ae(){return U(Be,x().venn)}t(ae,"getConfig");var qe=t(()=>{C(),Lt.length=0,jt.length=0,Ft.length=0,Pt.clear(),Vt=void 0,Bt=!1},"customClear"),Ue={getConfig:ae,clear:qe,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T,addSubsetData:Ae,getSubsetData:Ce,addTextData:Re,addStyleData:Ne,validateUnionIdentifiers:Le,getTextData:je,getStyleData:Oe,getCurrentSets:Fe,getIndentMode:Pe,setIndentMode:Ve},Ge=t((e)=>`
9
+ Expecting `+kt.join(", ")+", got '"+(this.terminals_[W]||W)+"'";else St="Parse error on line "+(Y+1)+": Unexpected "+(W==K?"end of input":"'"+(this.terminals_[W]||W)+"'");this.parseError(St,{text:q.match,token:this.terminals_[W]||W,line:q.yylineno,loc:et,expected:kt})}if(N[0]instanceof Array&&N.length>1)throw Error("Parse Error: multiple actions possible at state: "+ft+", token: "+W);switch(N[0]){case 1:if(D.push(W),k.push(q.yytext),y.push(q.yylloc),D.push(N[1]),W=null,!ht){if(lt=q.yyleng,O=q.yytext,Y=q.yylineno,et=q.yylloc,st>0)st--}else W=ht,ht=null;break;case 2:if(ot=this.productions_[N[1]][1],gt.$=k[k.length-ot],gt._$={first_line:y[y.length-(ot||1)].first_line,last_line:y[y.length-1].last_line,first_column:y[y.length-(ot||1)].first_column,last_column:y[y.length-1].last_column},ct)gt._$.range=[y[y.length-(ot||1)].range[0],y[y.length-1].range[1]];if(pt=this.performAction.apply(gt,[O,lt,Y,tt.yy,N[1],k,y].concat(Z)),typeof pt<"u")return pt;if(ot)D=D.slice(0,-1*ot*2),k=k.slice(0,-1*ot),y=y.slice(0,-1*ot);D.push(this.productions_[N[1]][0]),k.push(gt.$),y.push(gt._$),qt=H[D[D.length-2]][D[D.length-1]],D.push(qt);break;case 3:return!0}}return!0},"parse")},G=function(){var P={EOF:1,parseError:t(function(_,D){if(this.yy.parser)this.yy.parser.parseError(_,D);else throw Error(_)},"parseError"),setInput:t(function(v,_){if(this.yy=_||this.yy||{},this._input=v,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];return this.offset=0,this},"setInput"),input:t(function(){var v=this._input[0];this.yytext+=v,this.yyleng++,this.offset++,this.match+=v,this.matched+=v;var _=v.match(/(?:\r\n?|\n).*/g);if(_)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),v},"input"),unput:t(function(v){var _=v.length,D=v.split(/(?:\r\n?|\n)/g);this._input=v+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_),this.offset-=_;var f=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),D.length-1)this.yylineno-=D.length-1;var k=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:D?(D.length===f.length?this.yylloc.first_column:0)+f[f.length-D.length].length-D[0].length:this.yylloc.first_column-_},this.options.ranges)this.yylloc.range=[k[0],k[0]+this.yyleng-_];return this.yyleng=this.yytext.length,this},"unput"),more:t(function(){return this._more=!0,this},"more"),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
10
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:t(function(v){this.unput(this.match.slice(v))},"less"),pastInput:t(function(){var v=this.matched.substr(0,this.matched.length-this.match.length);return(v.length>20?"...":"")+v.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:t(function(){var v=this.match;if(v.length<20)v+=this._input.substr(0,20-v.length);return(v.substr(0,20)+(v.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:t(function(){var v=this.pastInput(),_=Array(v.length+1).join("-");return v+this.upcomingInput()+`
11
+ `+_+"^"},"showPosition"),test_match:t(function(v,_){var D,f,k;if(this.options.backtrack_lexer){if(k={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)k.yylloc.range=this.yylloc.range.slice(0)}if(f=v[0].match(/(?:\r\n?|\n).*/g),f)this.yylineno+=f.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:f?f[f.length-1].length-f[f.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+v[0].length},this.yytext+=v[0],this.match+=v[0],this.matches=v,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(v[0].length),this.matched+=v[0],D=this.performAction.call(this,this.yy,this,_,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(D)return D;else if(this._backtrack){for(var y in k)this[y]=k[y];return!1}return!1},"test_match"),next:t(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var v,_,D,f;if(!this._more)this.yytext="",this.match="";var k=this._currentRules();for(var y=0;y<k.length;y++)if(D=this._input.match(this.rules[k[y]]),D&&(!_||D[0].length>_[0].length)){if(_=D,f=y,this.options.backtrack_lexer)if(v=this.test_match(D,k[y]),v!==!1)return v;else if(this._backtrack){_=!1;continue}else return!1;else if(!this.options.flex)break}if(_){if(v=this.test_match(_,k[f]),v!==!1)return v;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
12
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var _=this.next();if(_)return _;else return this.lex()},"lex"),begin:t(function(_){this.conditionStack.push(_)},"begin"),popState:t(function(){var _=this.conditionStack.length-1;if(_>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(_){if(_=this.conditionStack.length-1-Math.abs(_||0),_>=0)return this.conditionStack[_];else return"INITIAL"},"topState"),pushState:t(function(_){this.begin(_)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(_,D,f,k){var y=k;switch(f){case 0:break;case 1:break;case 2:break;case 3:if(_.getIndentMode&&_.getIndentMode())return _.consumeIndentText=!0,this.begin("INITIAL"),22;break;case 4:break;case 5:if(_.setIndentMode)_.setIndentMode(!1);this.begin("INITIAL"),this.unput(D.yytext);break;case 6:return this.begin("bol"),8;break;case 7:break;case 8:break;case 9:return 7;case 10:return 11;case 11:return 5;case 12:return 12;case 13:return 17;case 14:if(_.consumeIndentText)_.consumeIndentText=!1;else return 19;break;case 15:return 24;case 16:return D.yytext=D.yytext.slice(2,-2),14;break;case 17:return D.yytext=D.yytext.slice(1,-1).trim(),14;break;case 18:return 16;case 19:return 31;case 20:return 33;case 21:return 32;case 22:return 20;case 23:return 21;case 24:return 27;case 25:return 15}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[ \t]+(?=[\n\r]))/i,/^(?:[ \t]+(?=text\b))/i,/^(?:[ \t]+)/i,/^(?:[^ \t\n\r])/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[ \t]+)/i,/^(?:$)/i,/^(?:title\s[^#\n;]+)/i,/^(?:venn-beta\b)/i,/^(?:set\b)/i,/^(?:union\b)/i,/^(?:text\b)/i,/^(?:style\b)/i,/^(?:\["[^\"]*"\])/i,/^(?:\[[^\]\"]+\])/i,/^(?:[+-]?(\d+(\.\d+)?|\.\d+))/i,/^(?:#[0-9a-fA-F]{3,8})/i,/^(?:rgba\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:rgb\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:"[^\"]*")/i,/^(?:,)/i,/^(?::)/i],conditions:{bol:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0},INITIAL:{rules:[0,1,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0}}};return P}();j.lexer=G;function B(){this.yy={}}return t(B,"Parser"),B.prototype=j,j.Parser=B,new B}();Ot.parser=Ot;var ze=Ot,Lt=[],jt=[],Ft=[],Pt=new Set,Vt,Bt=!1,Ae=t((e,s,i)=>{let n=Mt(e).sort(),r=i??10/Math.pow(e.length,2);if(Vt=n,n.length===1)Pt.add(n[0]);Lt.push({sets:n,size:r,label:s?vt(s):void 0})},"addSubsetData"),Ce=t(()=>Lt,"getSubsetData"),vt=t((e)=>{let s=e.trim();if(s.length>=2&&s.startsWith('"')&&s.endsWith('"'))return s.slice(1,-1);return s},"normalizeText"),De=t((e)=>e?vt(e):e,"normalizeStyleValue"),Re=t((e,s,i)=>{let n=vt(s);jt.push({sets:Mt(e).sort(),id:n,label:i?vt(i):void 0})},"addTextData"),Ne=t((e,s)=>{let i=Mt(e).sort(),n={};for(let[r,o]of s)n[r]=De(o)??o;Ft.push({targets:i,styles:n})},"addStyleData"),Oe=t(()=>Ft,"getStyleData"),Mt=t((e)=>e.map((s)=>vt(s)),"normalizeIdentifierList"),Le=t((e)=>{let i=Mt(e).filter((n)=>!Pt.has(n));if(i.length>0)throw Error(`unknown set identifier: ${i.join(", ")}`)},"validateUnionIdentifiers"),je=t(()=>jt,"getTextData"),Fe=t(()=>Vt,"getCurrentSets"),Pe=t(()=>Bt,"getIndentMode"),Ve=t((e)=>{Bt=e},"setIndentMode"),Be=M.venn;function ae(){return U(Be,x().venn)}t(ae,"getConfig");var qe=t(()=>{C(),Lt.length=0,jt.length=0,Ft.length=0,Pt.clear(),Vt=void 0,Bt=!1},"customClear"),Ue={getConfig:ae,clear:qe,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T,addSubsetData:Ae,getSubsetData:Ce,addTextData:Re,addStyleData:Ne,validateUnionIdentifiers:Le,getTextData:je,getStyleData:Oe,getCurrentSets:Fe,getIndentMode:Pe,setIndentMode:Ve},Ge=t((e)=>`
13
13
  .venn-title {
14
14
  font-size: 32px;
15
15
  fill: ${e.vennTitleTextColor};
@@ -31,4 +31,4 @@ Expecting `+kt.join(", ")+", got '"+(this.terminals_[W]||W)+"'";else St="Parse e
31
31
  font-family: ${e.fontFamily};
32
32
  color: ${e.vennSetTextColor};
33
33
  }
34
- `,"getStyles"),We=Ge;function le(e){let s=new Map;for(let i of e){let n=i.targets.join("|"),r=s.get(n);if(r)Object.assign(r,i.styles);else s.set(n,{...i.styles})}return s}t(le,"buildStyleByKey");var Ke=t((e,s,i,n)=>{let r=n.db,o=r.getConfig?.(),{themeVariables:a,look:c,handDrawnSeed:g}=x(),h=c==="handDrawn",l=[a.venn1,a.venn2,a.venn3,a.venn4,a.venn5,a.venn6,a.venn7,a.venn8].filter(Boolean),I=r.getDiagramTitle?.(),b=r.getSubsetData(),_=r.getTextData(),M=le(r.getStyleData()),j=ue(b),G=o?.width??800,B=o?.height??450,P=1600,v=G/1600,w=I?48*v:0,z=a.primaryTextColor??a.textColor,f=V(s);if(f.attr("viewBox",`0 0 ${G} ${B}`),I)f.append("text").text(I).attr("class","venn-title").attr("font-size",`${32*v}px`).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("x","50%").attr("y",32*v).style("fill",a.vennTitleTextColor||a.titleColor);let k=p(document.createElement("div")),y=ee().width(G).height(B-w);k.datum(j).call(y);let Y=h?m.svg(k.select("svg").node()):void 0,O=oe(j,{width:G,height:B-w,padding:o?.padding??15}),X=new Map;for(let H of O){let Z=yt([...H.data.sets].sort());X.set(Z,H)}if(_.length>0)ce(o,X,k,_,v,M);let lt=K(a.background||"#f4f4f4");if(k.selectAll(".venn-circle").each(function(H,Z){let q=p(this),it=yt([...H.sets].sort()),et=M.get(it),ct=l.length>0?l[Z%l.length]:void 0,rt=et?.fill||ct||a.primaryColor;q.classed(`venn-set-${Z%8}`,!0);let nt=et?.["fill-opacity"]??0.1,W=et?.stroke||rt,ht=et?.["stroke-width"]||`${5*v}`;if(h&&Y){let D=X.get(it);if(D&&D.circles.length>0){let Q=D.circles[0],pt=Y.circle(Q.x,Q.y,Q.radius*2,{roughness:0.7,seed:g,fill:wt(rt,0.7),fillStyle:"hachure",fillWeight:2,hachureGap:8,hachureAngle:-41+Z*60,stroke:W,strokeWidth:parseFloat(String(ht))});q.select("path").remove(),q.node()?.insertBefore(pt,q.select("text").node())}}else q.select("path").style("fill",rt).style("fill-opacity",nt).style("stroke",W).style("stroke-width",ht).style("stroke-opacity",0.95);let ft=et?.color||(lt?u(rt,30):d(rt,30));q.select("text").style("font-size",`${48*v}px`).style("fill",ft)}),h&&Y)k.selectAll(".venn-intersection").each(function(H){let Z=p(this),tt=yt([...H.sets].sort()),it=M.get(tt),et=it?.fill;if(et){let ct=Z.select("path"),rt=ct.attr("d");if(rt){let nt=Y.path(rt,{roughness:0.7,seed:g,fill:wt(et,0.3),fillStyle:"cross-hatch",fillWeight:2,hachureGap:6,hachureAngle:60,stroke:"none"}),W=ct.node();W?.parentNode?.insertBefore(nt,W),ct.remove()}}else Z.select("path").style("fill-opacity",0);Z.select("text").style("font-size",`${48*v}px`).style("fill",it?.color??a.vennSetTextColor??z)});else k.selectAll(".venn-intersection text").style("font-size",`${48*v}px`).style("fill",(H)=>{let q=yt([...H.sets].sort());return M.get(q)?.color??a.vennSetTextColor??z}),k.selectAll(".venn-intersection path").style("fill-opacity",(H)=>{let q=yt([...H.sets].sort());return M.get(q)?.fill?1:0}).style("fill",(H)=>{let q=yt([...H.sets].sort());return M.get(q)?.fill??"transparent"});let st=f.append("g").attr("transform",`translate(0, ${w})`),J=k.select("svg").node();if(J&&"childNodes"in J)for(let H of[...J.childNodes])st.node()?.appendChild(H);F(f,B,G,o?.useMaxWidth??!0)},"draw");function yt(e){return e.join("|")}t(yt,"stableSetsKey");function ce(e,s,i,n,r,o){let a=e?.useDebugLayout??!1,g=i.select("svg").append("g").attr("class","venn-text-nodes"),h=new Map;for(let l of n){let I=yt(l.sets),b=h.get(I);if(b)b.push(l);else h.set(I,[l])}for(let[l,I]of h.entries()){let b=s.get(l);if(!b?.text)continue;let _=b.text.x,M=b.text.y,j=Math.min(...b.circles.map((J)=>J.radius)),G=Math.min(...b.circles.map((J)=>J.radius-Math.hypot(_-J.x,M-J.y))),B=Number.isFinite(G)?Math.max(0,G):0;if(B===0&&Number.isFinite(j))B=j*0.6;let P=g.append("g").attr("class","venn-text-area").attr("font-size",`${40*r}px`);if(a)P.append("circle").attr("class","venn-text-debug-circle").attr("cx",_).attr("cy",M).attr("r",B).attr("fill","none").attr("stroke","purple").attr("stroke-width",1.5*r).attr("stroke-dasharray",`${6*r} ${4*r}`);let v=Math.max(80*r,B*2*0.95),w=Math.max(60*r,B*2*0.95),k=(b.data.label&&b.data.label.length>0?Math.min(32*r,B*0.25):0)+(I.length<=2?30*r:0),y=_-v/2,Y=M-w/2+k,O=Math.max(1,Math.ceil(Math.sqrt(I.length))),X=Math.max(1,Math.ceil(I.length/O)),lt=v/O,st=w/X;for(let[J,H]of I.entries()){let Z=J%O,q=Math.floor(J/O),tt=y+lt*(Z+0.5),it=Y+st*(q+0.5);if(a)P.append("rect").attr("class","venn-text-debug-cell").attr("x",y+lt*Z).attr("y",Y+st*q).attr("width",lt).attr("height",st).attr("fill","none").attr("stroke","teal").attr("stroke-width",1*r).attr("stroke-dasharray",`${4*r} ${3*r}`);let et=lt*0.9,ct=st*0.9,rt=P.append("foreignObject").attr("class","venn-text-node-fo").attr("width",et).attr("height",ct).attr("x",tt-et/2).attr("y",it-ct/2).attr("overflow","visible"),nt=o.get(H.id)?.color,W=rt.append("xhtml:span").attr("class","venn-text-node").style("display","flex").style("width","100%").style("height","100%").style("white-space","normal").style("align-items","center").style("justify-content","center").style("text-align","center").style("overflow-wrap","normal").style("word-break","normal").text(H.label??H.id);if(nt)W.style("color",nt)}}}t(ce,"renderTextNodes");function ue(e){let s=new Set(e.map((r)=>[...r.sets].sort().join("|"))),i=new Map(e.filter((r)=>r.sets.length===1&&r.size!==void 0).map((r)=>[r.sets[0],r.size])),n=[];for(let r of e){if(r.sets.length<3)continue;let o=[...r.sets].sort();for(let a=0;a<o.length-1;a++)for(let c=a+1;c<o.length;c++){let g=[o[a],o[c]],h=g.join("|");if(!s.has(h)){s.add(h);let l=i.get(g[0]),I=i.get(g[1]),b=l!==void 0&&I!==void 0?Math.min(l,I)/4:2.5;n.push({sets:g,size:b,label:""})}}}return n.length>0?[...e,...n]:e}t(ue,"ensurePairwiseSubsets");var He={draw:Ke},rn={parser:ze,db:Ue,renderer:He,styles:We};export{rn as diagram};
34
+ `,"getStyles"),We=Ge;function le(e){let s=new Map;for(let i of e){let n=i.targets.join("|"),r=s.get(n);if(r)Object.assign(r,i.styles);else s.set(n,{...i.styles})}return s}t(le,"buildStyleByKey");var Ke=t((e,s,i,n)=>{let r=n.db,o=r.getConfig?.(),{themeVariables:a,look:c,handDrawnSeed:g}=x(),h=c==="handDrawn",l=[a.venn1,a.venn2,a.venn3,a.venn4,a.venn5,a.venn6,a.venn7,a.venn8].filter(Boolean),I=r.getDiagramTitle?.(),b=r.getSubsetData(),z=r.getTextData(),w=le(r.getStyleData()),j=ue(b),G=o?.width??800,B=o?.height??450,P=1600,v=G/1600,_=I?48*v:0,D=a.primaryTextColor??a.textColor,f=V(s);if(f.attr("viewBox",`0 0 ${G} ${B}`),I)f.append("text").text(I).attr("class","venn-title").attr("font-size",`${32*v}px`).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("x","50%").attr("y",32*v).style("fill",a.vennTitleTextColor||a.titleColor);let k=p(document.createElement("div")),y=ee().width(G).height(B-_);k.datum(j).call(y);let H=h?m.svg(k.select("svg").node()):void 0,O=oe(j,{width:G,height:B-_,padding:o?.padding??15}),Y=new Map;for(let K of O){let Z=yt([...K.data.sets].sort());Y.set(Z,K)}if(z.length>0)ce(o,Y,k,z,v,w);let lt=X(a.background||"#f4f4f4");if(k.selectAll(".venn-circle").each(function(K,Z){let q=p(this),it=yt([...K.sets].sort()),et=w.get(it),ct=l.length>0?l[Z%l.length]:void 0,rt=et?.fill||ct||a.primaryColor;q.classed(`venn-set-${Z%8}`,!0);let nt=et?.["fill-opacity"]??0.1,W=et?.stroke||rt,ht=et?.["stroke-width"]||`${5*v}`;if(h&&H){let N=Y.get(it);if(N&&N.circles.length>0){let Q=N.circles[0],pt=H.circle(Q.x,Q.y,Q.radius*2,{roughness:0.7,seed:g,fill:wt(rt,0.7),fillStyle:"hachure",fillWeight:2,hachureGap:8,hachureAngle:-41+Z*60,stroke:W,strokeWidth:parseFloat(String(ht))});q.select("path").remove(),q.node()?.insertBefore(pt,q.select("text").node())}}else q.select("path").style("fill",rt).style("fill-opacity",nt).style("stroke",W).style("stroke-width",ht).style("stroke-opacity",0.95);let ft=et?.color||(lt?u(rt,30):d(rt,30));q.select("text").style("font-size",`${48*v}px`).style("fill",ft)}),h&&H)k.selectAll(".venn-intersection").each(function(K){let Z=p(this),tt=yt([...K.sets].sort()),it=w.get(tt),et=it?.fill;if(et){let ct=Z.select("path"),rt=ct.attr("d");if(rt){let nt=H.path(rt,{roughness:0.7,seed:g,fill:wt(et,0.3),fillStyle:"cross-hatch",fillWeight:2,hachureGap:6,hachureAngle:60,stroke:"none"}),W=ct.node();W?.parentNode?.insertBefore(nt,W),ct.remove()}}else Z.select("path").style("fill-opacity",0);Z.select("text").style("font-size",`${48*v}px`).style("fill",it?.color??a.vennSetTextColor??D)});else k.selectAll(".venn-intersection text").style("font-size",`${48*v}px`).style("fill",(K)=>{let q=yt([...K.sets].sort());return w.get(q)?.color??a.vennSetTextColor??D}),k.selectAll(".venn-intersection path").style("fill-opacity",(K)=>{let q=yt([...K.sets].sort());return w.get(q)?.fill?1:0}).style("fill",(K)=>{let q=yt([...K.sets].sort());return w.get(q)?.fill??"transparent"});let st=f.append("g").attr("transform",`translate(0, ${_})`),J=k.select("svg").node();if(J&&"childNodes"in J)for(let K of[...J.childNodes])st.node()?.appendChild(K);F(f,B,G,o?.useMaxWidth??!0)},"draw");function yt(e){return e.join("|")}t(yt,"stableSetsKey");function ce(e,s,i,n,r,o){let a=e?.useDebugLayout??!1,g=i.select("svg").append("g").attr("class","venn-text-nodes"),h=new Map;for(let l of n){let I=yt(l.sets),b=h.get(I);if(b)b.push(l);else h.set(I,[l])}for(let[l,I]of h.entries()){let b=s.get(l);if(!b?.text)continue;let z=b.text.x,w=b.text.y,j=Math.min(...b.circles.map((J)=>J.radius)),G=Math.min(...b.circles.map((J)=>J.radius-Math.hypot(z-J.x,w-J.y))),B=Number.isFinite(G)?Math.max(0,G):0;if(B===0&&Number.isFinite(j))B=j*0.6;let P=g.append("g").attr("class","venn-text-area").attr("font-size",`${40*r}px`);if(a)P.append("circle").attr("class","venn-text-debug-circle").attr("cx",z).attr("cy",w).attr("r",B).attr("fill","none").attr("stroke","purple").attr("stroke-width",1.5*r).attr("stroke-dasharray",`${6*r} ${4*r}`);let v=Math.max(80*r,B*2*0.95),_=Math.max(60*r,B*2*0.95),k=(b.data.label&&b.data.label.length>0?Math.min(32*r,B*0.25):0)+(I.length<=2?30*r:0),y=z-v/2,H=w-_/2+k,O=Math.max(1,Math.ceil(Math.sqrt(I.length))),Y=Math.max(1,Math.ceil(I.length/O)),lt=v/O,st=_/Y;for(let[J,K]of I.entries()){let Z=J%O,q=Math.floor(J/O),tt=y+lt*(Z+0.5),it=H+st*(q+0.5);if(a)P.append("rect").attr("class","venn-text-debug-cell").attr("x",y+lt*Z).attr("y",H+st*q).attr("width",lt).attr("height",st).attr("fill","none").attr("stroke","teal").attr("stroke-width",1*r).attr("stroke-dasharray",`${4*r} ${3*r}`);let et=lt*0.9,ct=st*0.9,rt=P.append("foreignObject").attr("class","venn-text-node-fo").attr("width",et).attr("height",ct).attr("x",tt-et/2).attr("y",it-ct/2).attr("overflow","visible"),nt=o.get(K.id)?.color,W=rt.append("xhtml:span").attr("class","venn-text-node").style("display","flex").style("width","100%").style("height","100%").style("white-space","normal").style("align-items","center").style("justify-content","center").style("text-align","center").style("overflow-wrap","normal").style("word-break","normal").text(K.label??K.id);if(nt)W.style("color",nt)}}}t(ce,"renderTextNodes");function ue(e){let s=new Set(e.map((r)=>[...r.sets].sort().join("|"))),i=new Map(e.filter((r)=>r.sets.length===1&&r.size!==void 0).map((r)=>[r.sets[0],r.size])),n=[];for(let r of e){if(r.sets.length<3)continue;let o=[...r.sets].sort();for(let a=0;a<o.length-1;a++)for(let c=a+1;c<o.length;c++){let g=[o[a],o[c]],h=g.join("|");if(!s.has(h)){s.add(h);let l=i.get(g[0]),I=i.get(g[1]),b=l!==void 0&&I!==void 0?Math.min(l,I)/4:2.5;n.push({sets:g,size:b,label:""})}}}return n.length>0?[...e,...n]:e}t(ue,"ensurePairwiseSubsets");var He={draw:Ke},rn={parser:ze,db:Ue,renderer:He,styles:We};export{rn as diagram};
@@ -1,7 +1,7 @@
1
- import{t,a,ke,N,O,F,C,S,E,T,A,L,R,l,p}from"./chunk-tfqarvdx.js";import"./chunk-9yfftz38.js";import{kt}from"./chunk-zz1qkaar.js";var Qt=function(){var e=t(function(st,o,c,f){for(c=c||{},f=st.length;f--;c[st[f]]=o);return c},"o"),r=[1,3],m=[1,4],y=[1,5],h=[1,6],g=[1,7],V=[1,4,5,10,12,13,14,15,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],d=[1,4,5,10,12,13,14,15,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],D=[2,36],P=[1,37],v=[1,36],q=[1,38],k=[1,35],_=[1,43],b=[1,41],I=[1,45],_t=[1,14],At=[1,23],Ft=[1,18],Pt=[1,19],mt=[1,20],Vt=[1,21],qt=[1,22],n=[1,24],Ht=[1,25],Xt=[1,26],Mt=[1,27],Yt=[1,28],jt=[1,29],tt=[1,32],et=[1,33],w=[1,34],B=[1,39],W=[1,40],U=[1,42],Q=[1,44],at=[1,63],nt=[1,62],H=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],Gt=[1,66],Kt=[1,67],Zt=[1,68],Jt=[1,69],$t=[1,70],te=[1,71],ee=[1,72],ie=[1,73],ae=[1,74],ne=[1,75],re=[1,76],se=[1,77],G=[4,5,6,7,8,9,10,11,12,13,14,15,18],ht=[1,91],ct=[1,92],dt=[1,93],ut=[1,100],xt=[1,94],ft=[1,97],gt=[1,95],pt=[1,96],yt=[1,98],bt=[1,99],It=[1,103],oe=[10,55,56,57],K=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],wt={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:t(function(o,c,f,x,z,i,St){var s=i.length-1;switch(z){case 23:this.$=i[s];break;case 24:this.$=i[s-1]+""+i[s];break;case 26:this.$=i[s-1]+i[s];break;case 27:this.$=[i[s].trim()];break;case 28:i[s-2].push(i[s].trim()),this.$=i[s-2];break;case 29:this.$=i[s-4],x.addClass(i[s-2],i[s]);break;case 37:this.$=[];break;case 42:this.$=i[s].trim(),x.setDiagramTitle(this.$);break;case 43:this.$=i[s].trim(),x.setAccTitle(this.$);break;case 44:case 45:this.$=i[s].trim(),x.setAccDescription(this.$);break;case 46:x.addSection(i[s].substr(8)),this.$=i[s].substr(8);break;case 47:x.addPoint(i[s-3],"",i[s-1],i[s],[]);break;case 48:x.addPoint(i[s-4],i[s-3],i[s-1],i[s],[]);break;case 49:x.addPoint(i[s-4],"",i[s-2],i[s-1],i[s]);break;case 50:x.addPoint(i[s-5],i[s-4],i[s-2],i[s-1],i[s]);break;case 51:x.setXAxisLeftText(i[s-2]),x.setXAxisRightText(i[s]);break;case 52:i[s-1].text+=" ⟶ ",x.setXAxisLeftText(i[s-1]);break;case 53:x.setXAxisLeftText(i[s]);break;case 54:x.setYAxisBottomText(i[s-2]),x.setYAxisTopText(i[s]);break;case 55:i[s-1].text+=" ⟶ ",x.setYAxisBottomText(i[s-1]);break;case 56:x.setYAxisBottomText(i[s]);break;case 57:x.setQuadrant1Text(i[s]);break;case 58:x.setQuadrant2Text(i[s]);break;case 59:x.setQuadrant3Text(i[s]);break;case 60:x.setQuadrant4Text(i[s]);break;case 64:this.$={text:i[s],type:"text"};break;case 65:this.$={text:i[s-1].text+""+i[s],type:i[s-1].type};break;case 66:this.$={text:i[s],type:"text"};break;case 67:this.$={text:i[s],type:"markdown"};break;case 68:this.$=i[s];break;case 69:this.$=i[s-1]+""+i[s];break}},"anonymous"),table:[{18:r,26:1,27:2,28:m,55:y,56:h,57:g},{1:[3]},{18:r,26:8,27:2,28:m,55:y,56:h,57:g},{18:r,26:9,27:2,28:m,55:y,56:h,57:g},e(V,[2,33],{29:10}),e(d,[2,61]),e(d,[2,62]),e(d,[2,63]),{1:[2,30]},{1:[2,31]},e(u,D,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:P,5:v,10:q,12:k,13:_,14:b,15:I,18:_t,25:At,35:Ft,37:Pt,39:mt,41:Vt,42:qt,48:n,50:Ht,51:Xt,52:Mt,53:Yt,54:jt,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q}),e(V,[2,34]),{27:46,55:y,56:h,57:g},e(u,[2,37]),e(u,D,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:P,5:v,10:q,12:k,13:_,14:b,15:I,18:_t,25:At,35:Ft,37:Pt,39:mt,41:Vt,42:qt,48:n,50:Ht,51:Xt,52:Mt,53:Yt,54:jt,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,39]),e(u,[2,40]),e(u,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},e(u,[2,45]),e(u,[2,46]),{18:[1,51]},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:52,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:53,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:54,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:55,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:56,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:57,58:31,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q},{4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,44:[1,58],47:[1,59],58:61,59:60,63:w,64:B,65:W,66:U,67:Q},e(H,[2,64]),e(H,[2,66]),e(H,[2,67]),e(H,[2,70]),e(H,[2,71]),e(H,[2,72]),e(H,[2,73]),e(H,[2,74]),e(H,[2,75]),e(H,[2,76]),e(H,[2,77]),e(H,[2,78]),e(H,[2,79]),e(H,[2,80]),e(H,[2,81]),e(V,[2,35]),e(u,[2,38]),e(u,[2,42]),e(u,[2,43]),e(u,[2,44]),{3:65,4:Gt,5:Kt,6:Zt,7:Jt,8:$t,9:te,10:ee,11:ie,12:ae,13:ne,14:re,15:se,21:64},e(u,[2,53],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,49:[1,78],63:w,64:B,65:W,66:U,67:Q}),e(u,[2,56],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,49:[1,79],63:w,64:B,65:W,66:U,67:Q}),e(u,[2,57],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,58],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,59],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,60],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),{45:[1,80]},{44:[1,81]},e(H,[2,65]),e(H,[2,82]),e(H,[2,83]),e(H,[2,84]),{3:83,4:Gt,5:Kt,6:Zt,7:Jt,8:$t,9:te,10:ee,11:ie,12:ae,13:ne,14:re,15:se,18:[1,82]},e(G,[2,23]),e(G,[2,1]),e(G,[2,2]),e(G,[2,3]),e(G,[2,4]),e(G,[2,5]),e(G,[2,6]),e(G,[2,7]),e(G,[2,8]),e(G,[2,9]),e(G,[2,10]),e(G,[2,11]),e(G,[2,12]),e(u,[2,52],{58:31,43:84,4:P,5:v,10:q,12:k,13:_,14:b,15:I,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,55],{58:31,43:85,4:P,5:v,10:q,12:k,13:_,14:b,15:I,60:tt,61:et,63:w,64:B,65:W,66:U,67:Q}),{46:[1,86]},{45:[1,87]},{4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,16:90,17:gt,18:pt,19:yt,20:bt,22:89,23:88},e(G,[2,24]),e(u,[2,51],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,54],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:W,66:U,67:Q}),e(u,[2,47],{22:89,16:90,23:101,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),{46:[1,102]},e(u,[2,29],{10:It}),e(oe,[2,27],{16:104,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),e(K,[2,25]),e(K,[2,13]),e(K,[2,14]),e(K,[2,15]),e(K,[2,16]),e(K,[2,17]),e(K,[2,18]),e(K,[2,19]),e(K,[2,20]),e(K,[2,21]),e(K,[2,22]),e(u,[2,49],{10:It}),e(u,[2,48],{22:89,16:90,23:105,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),{4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,16:90,17:gt,18:pt,19:yt,20:bt,22:106},e(K,[2,26]),e(u,[2,50],{10:It}),e(oe,[2,28],{16:104,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt})],defaultActions:{8:[2,30],9:[2,31]},parseError:t(function(o,c){if(c.recoverable)this.trace(o);else{var f=Error(o);throw f.hash=c,f}},"parseError"),parse:t(function(o){var c=this,f=[0],x=[],z=[null],i=[],St=this.table,s="",Ct=0,le=0,he=0,Le=2,ce=1,Ee=i.slice.call(arguments,1),X=Object.create(this.lexer),ot={yy:{}};for(var Bt in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Bt))ot.yy[Bt]=this.yy[Bt];if(X.setInput(o,ot.yy),ot.yy.lexer=X,ot.yy.parser=this,typeof X.yylloc>"u")X.yylloc={};var Rt=X.yylloc;i.push(Rt);var De=X.options&&X.options.ranges;if(typeof ot.yy.parseError==="function")this.parseError=ot.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function ze(J){f.length=f.length-2*J,z.length=z.length-J,i.length=i.length-J}t(ze,"popStack");function de(){var J=x.pop()||X.lex()||ce;if(typeof J!=="number"){if(J instanceof Array)x=J,J=x.pop();J=c.symbols_[J]||J}return J}t(de,"lex");var Y,Nt,lt,Z,We,Wt,Tt={},Lt,rt,ue,Et;while(!0){if(lt=f[f.length-1],this.defaultActions[lt])Z=this.defaultActions[lt];else{if(Y===null||typeof Y>"u")Y=de();Z=St[lt]&&St[lt][Y]}if(typeof Z>"u"||!Z.length||!Z[0]){var Ut="";Et=[];for(Lt in St[lt])if(this.terminals_[Lt]&&Lt>Le)Et.push("'"+this.terminals_[Lt]+"'");if(X.showPosition)Ut="Parse error on line "+(Ct+1)+`:
2
- `+X.showPosition()+`
3
- Expecting `+Et.join(", ")+", got '"+(this.terminals_[Y]||Y)+"'";else Ut="Parse error on line "+(Ct+1)+": Unexpected "+(Y==ce?"end of input":"'"+(this.terminals_[Y]||Y)+"'");this.parseError(Ut,{text:X.match,token:this.terminals_[Y]||Y,line:X.yylineno,loc:Rt,expected:Et})}if(Z[0]instanceof Array&&Z.length>1)throw Error("Parse Error: multiple actions possible at state: "+lt+", token: "+Y);switch(Z[0]){case 1:if(f.push(Y),z.push(X.yytext),i.push(X.yylloc),f.push(Z[1]),Y=null,!Nt){if(le=X.yyleng,s=X.yytext,Ct=X.yylineno,Rt=X.yylloc,he>0)he--}else Y=Nt,Nt=null;break;case 2:if(rt=this.productions_[Z[1]][1],Tt.$=z[z.length-rt],Tt._$={first_line:i[i.length-(rt||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(rt||1)].first_column,last_column:i[i.length-1].last_column},De)Tt._$.range=[i[i.length-(rt||1)].range[0],i[i.length-1].range[1]];if(Wt=this.performAction.apply(Tt,[s,le,Ct,ot.yy,Z[1],z,i].concat(Ee)),typeof Wt<"u")return Wt;if(rt)f=f.slice(0,-1*rt*2),z=z.slice(0,-1*rt),i=i.slice(0,-1*rt);f.push(this.productions_[Z[1]][0]),z.push(Tt.$),i.push(Tt._$),ue=St[f[f.length-2]][f[f.length-1]],f.push(ue);break;case 3:return!0}}return!0},"parse")},Ce=function(){var st={EOF:1,parseError:t(function(c,f){if(this.yy.parser)this.yy.parser.parseError(c,f);else throw Error(c)},"parseError"),setInput:t(function(o,c){if(this.yy=c||this.yy||{},this._input=o,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];return this.offset=0,this},"setInput"),input:t(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var c=o.match(/(?:\r\n?|\n).*/g);if(c)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),o},"input"),unput:t(function(o){var c=o.length,f=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var x=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1)this.yylineno-=f.length-1;var z=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===x.length?this.yylloc.first_column:0)+x[x.length-f.length].length-f[0].length:this.yylloc.first_column-c},this.options.ranges)this.yylloc.range=[z[0],z[0]+this.yyleng-c];return this.yyleng=this.yytext.length,this},"unput"),more:t(function(){return this._more=!0,this},"more"),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
1
+ import{t,a,we,M,O,F,C,S,E,T,A,L,R,l,p}from"./chunk-b5zf1hs3.js";import"./chunk-qp3tjhaq.js";import{wt}from"./chunk-enwfd8d5.js";var Qt=function(){var e=t(function(st,o,c,f){for(c=c||{},f=st.length;f--;c[st[f]]=o);return c},"o"),r=[1,3],m=[1,4],y=[1,5],h=[1,6],g=[1,7],V=[1,4,5,10,12,13,14,15,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],d=[1,4,5,10,12,13,14,15,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],u=[55,56,57],D=[2,36],P=[1,37],v=[1,36],q=[1,38],k=[1,35],_=[1,43],b=[1,41],I=[1,45],St=[1,14],_t=[1,23],At=[1,18],Ft=[1,19],mt=[1,20],zt=[1,21],qt=[1,22],n=[1,24],Ht=[1,25],Xt=[1,26],Mt=[1,27],Yt=[1,28],jt=[1,29],tt=[1,32],et=[1,33],w=[1,34],B=[1,39],N=[1,40],W=[1,42],U=[1,44],at=[1,63],nt=[1,62],Q=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],Gt=[1,66],Kt=[1,67],Zt=[1,68],Jt=[1,69],$t=[1,70],te=[1,71],ee=[1,72],ie=[1,73],ae=[1,74],ne=[1,75],re=[1,76],se=[1,77],G=[4,5,6,7,8,9,10,11,12,13,14,15,18],ht=[1,91],ct=[1,92],dt=[1,93],ut=[1,100],xt=[1,94],ft=[1,97],gt=[1,95],pt=[1,96],yt=[1,98],bt=[1,99],Vt=[1,103],oe=[10,55,56,57],K=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],It={trace:t(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:t(function(o,c,f,x,z,i,kt){var s=i.length-1;switch(z){case 23:this.$=i[s];break;case 24:this.$=i[s-1]+""+i[s];break;case 26:this.$=i[s-1]+i[s];break;case 27:this.$=[i[s].trim()];break;case 28:i[s-2].push(i[s].trim()),this.$=i[s-2];break;case 29:this.$=i[s-4],x.addClass(i[s-2],i[s]);break;case 37:this.$=[];break;case 42:this.$=i[s].trim(),x.setDiagramTitle(this.$);break;case 43:this.$=i[s].trim(),x.setAccTitle(this.$);break;case 44:case 45:this.$=i[s].trim(),x.setAccDescription(this.$);break;case 46:x.addSection(i[s].substr(8)),this.$=i[s].substr(8);break;case 47:x.addPoint(i[s-3],"",i[s-1],i[s],[]);break;case 48:x.addPoint(i[s-4],i[s-3],i[s-1],i[s],[]);break;case 49:x.addPoint(i[s-4],"",i[s-2],i[s-1],i[s]);break;case 50:x.addPoint(i[s-5],i[s-4],i[s-2],i[s-1],i[s]);break;case 51:x.setXAxisLeftText(i[s-2]),x.setXAxisRightText(i[s]);break;case 52:i[s-1].text+=" ⟶ ",x.setXAxisLeftText(i[s-1]);break;case 53:x.setXAxisLeftText(i[s]);break;case 54:x.setYAxisBottomText(i[s-2]),x.setYAxisTopText(i[s]);break;case 55:i[s-1].text+=" ⟶ ",x.setYAxisBottomText(i[s-1]);break;case 56:x.setYAxisBottomText(i[s]);break;case 57:x.setQuadrant1Text(i[s]);break;case 58:x.setQuadrant2Text(i[s]);break;case 59:x.setQuadrant3Text(i[s]);break;case 60:x.setQuadrant4Text(i[s]);break;case 64:this.$={text:i[s],type:"text"};break;case 65:this.$={text:i[s-1].text+""+i[s],type:i[s-1].type};break;case 66:this.$={text:i[s],type:"text"};break;case 67:this.$={text:i[s],type:"markdown"};break;case 68:this.$=i[s];break;case 69:this.$=i[s-1]+""+i[s];break}},"anonymous"),table:[{18:r,26:1,27:2,28:m,55:y,56:h,57:g},{1:[3]},{18:r,26:8,27:2,28:m,55:y,56:h,57:g},{18:r,26:9,27:2,28:m,55:y,56:h,57:g},e(V,[2,33],{29:10}),e(d,[2,61]),e(d,[2,62]),e(d,[2,63]),{1:[2,30]},{1:[2,31]},e(u,D,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:P,5:v,10:q,12:k,13:_,14:b,15:I,18:St,25:_t,35:At,37:Ft,39:mt,41:zt,42:qt,48:n,50:Ht,51:Xt,52:Mt,53:Yt,54:jt,60:tt,61:et,63:w,64:B,65:N,66:W,67:U}),e(V,[2,34]),{27:46,55:y,56:h,57:g},e(u,[2,37]),e(u,D,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:P,5:v,10:q,12:k,13:_,14:b,15:I,18:St,25:_t,35:At,37:Ft,39:mt,41:zt,42:qt,48:n,50:Ht,51:Xt,52:Mt,53:Yt,54:jt,60:tt,61:et,63:w,64:B,65:N,66:W,67:U}),e(u,[2,39]),e(u,[2,40]),e(u,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},e(u,[2,45]),e(u,[2,46]),{18:[1,51]},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:52,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:53,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:54,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:55,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:56,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,10:q,12:k,13:_,14:b,15:I,43:57,58:31,60:tt,61:et,63:w,64:B,65:N,66:W,67:U},{4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,44:[1,58],47:[1,59],58:61,59:60,63:w,64:B,65:N,66:W,67:U},e(Q,[2,64]),e(Q,[2,66]),e(Q,[2,67]),e(Q,[2,70]),e(Q,[2,71]),e(Q,[2,72]),e(Q,[2,73]),e(Q,[2,74]),e(Q,[2,75]),e(Q,[2,76]),e(Q,[2,77]),e(Q,[2,78]),e(Q,[2,79]),e(Q,[2,80]),e(Q,[2,81]),e(V,[2,35]),e(u,[2,38]),e(u,[2,42]),e(u,[2,43]),e(u,[2,44]),{3:65,4:Gt,5:Kt,6:Zt,7:Jt,8:$t,9:te,10:ee,11:ie,12:ae,13:ne,14:re,15:se,21:64},e(u,[2,53],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,49:[1,78],63:w,64:B,65:N,66:W,67:U}),e(u,[2,56],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,49:[1,79],63:w,64:B,65:N,66:W,67:U}),e(u,[2,57],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),e(u,[2,58],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),e(u,[2,59],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),e(u,[2,60],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),{45:[1,80]},{44:[1,81]},e(Q,[2,65]),e(Q,[2,82]),e(Q,[2,83]),e(Q,[2,84]),{3:83,4:Gt,5:Kt,6:Zt,7:Jt,8:$t,9:te,10:ee,11:ie,12:ae,13:ne,14:re,15:se,18:[1,82]},e(G,[2,23]),e(G,[2,1]),e(G,[2,2]),e(G,[2,3]),e(G,[2,4]),e(G,[2,5]),e(G,[2,6]),e(G,[2,7]),e(G,[2,8]),e(G,[2,9]),e(G,[2,10]),e(G,[2,11]),e(G,[2,12]),e(u,[2,52],{58:31,43:84,4:P,5:v,10:q,12:k,13:_,14:b,15:I,60:tt,61:et,63:w,64:B,65:N,66:W,67:U}),e(u,[2,55],{58:31,43:85,4:P,5:v,10:q,12:k,13:_,14:b,15:I,60:tt,61:et,63:w,64:B,65:N,66:W,67:U}),{46:[1,86]},{45:[1,87]},{4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,16:90,17:gt,18:pt,19:yt,20:bt,22:89,23:88},e(G,[2,24]),e(u,[2,51],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),e(u,[2,54],{59:60,58:61,4:P,5:v,8:at,10:q,12:k,13:_,14:b,15:I,18:nt,63:w,64:B,65:N,66:W,67:U}),e(u,[2,47],{22:89,16:90,23:101,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),{46:[1,102]},e(u,[2,29],{10:Vt}),e(oe,[2,27],{16:104,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),e(K,[2,25]),e(K,[2,13]),e(K,[2,14]),e(K,[2,15]),e(K,[2,16]),e(K,[2,17]),e(K,[2,18]),e(K,[2,19]),e(K,[2,20]),e(K,[2,21]),e(K,[2,22]),e(u,[2,49],{10:Vt}),e(u,[2,48],{22:89,16:90,23:105,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt}),{4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,16:90,17:gt,18:pt,19:yt,20:bt,22:106},e(K,[2,26]),e(u,[2,50],{10:Vt}),e(oe,[2,28],{16:104,4:ht,5:ct,6:dt,8:ut,11:xt,13:ft,17:gt,18:pt,19:yt,20:bt})],defaultActions:{8:[2,30],9:[2,31]},parseError:t(function(o,c){if(c.recoverable)this.trace(o);else{var f=Error(o);throw f.hash=c,f}},"parseError"),parse:t(function(o){var c=this,f=[0],x=[],z=[null],i=[],kt=this.table,s="",vt=0,le=0,he=0,Ce=2,ce=1,Le=i.slice.call(arguments,1),H=Object.create(this.lexer),ot={yy:{}};for(var Bt in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Bt))ot.yy[Bt]=this.yy[Bt];if(H.setInput(o,ot.yy),ot.yy.lexer=H,ot.yy.parser=this,typeof H.yylloc>"u")H.yylloc={};var Rt=H.yylloc;i.push(Rt);var Ee=H.options&&H.options.ranges;if(typeof ot.yy.parseError==="function")this.parseError=ot.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function De(J){f.length=f.length-2*J,z.length=z.length-J,i.length=i.length-J}t(De,"popStack");function de(){var J=x.pop()||H.lex()||ce;if(typeof J!=="number"){if(J instanceof Array)x=J,J=x.pop();J=c.symbols_[J]||J}return J}t(de,"lex");var Y,Nt,lt,Z,We,Wt,Tt={},Ct,rt,ue,Lt;while(!0){if(lt=f[f.length-1],this.defaultActions[lt])Z=this.defaultActions[lt];else{if(Y===null||typeof Y>"u")Y=de();Z=kt[lt]&&kt[lt][Y]}if(typeof Z>"u"||!Z.length||!Z[0]){var Ut="";Lt=[];for(Ct in kt[lt])if(this.terminals_[Ct]&&Ct>Ce)Lt.push("'"+this.terminals_[Ct]+"'");if(H.showPosition)Ut="Parse error on line "+(vt+1)+`:
2
+ `+H.showPosition()+`
3
+ Expecting `+Lt.join(", ")+", got '"+(this.terminals_[Y]||Y)+"'";else Ut="Parse error on line "+(vt+1)+": Unexpected "+(Y==ce?"end of input":"'"+(this.terminals_[Y]||Y)+"'");this.parseError(Ut,{text:H.match,token:this.terminals_[Y]||Y,line:H.yylineno,loc:Rt,expected:Lt})}if(Z[0]instanceof Array&&Z.length>1)throw Error("Parse Error: multiple actions possible at state: "+lt+", token: "+Y);switch(Z[0]){case 1:if(f.push(Y),z.push(H.yytext),i.push(H.yylloc),f.push(Z[1]),Y=null,!Nt){if(le=H.yyleng,s=H.yytext,vt=H.yylineno,Rt=H.yylloc,he>0)he--}else Y=Nt,Nt=null;break;case 2:if(rt=this.productions_[Z[1]][1],Tt.$=z[z.length-rt],Tt._$={first_line:i[i.length-(rt||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(rt||1)].first_column,last_column:i[i.length-1].last_column},Ee)Tt._$.range=[i[i.length-(rt||1)].range[0],i[i.length-1].range[1]];if(Wt=this.performAction.apply(Tt,[s,le,vt,ot.yy,Z[1],z,i].concat(Le)),typeof Wt<"u")return Wt;if(rt)f=f.slice(0,-1*rt*2),z=z.slice(0,-1*rt),i=i.slice(0,-1*rt);f.push(this.productions_[Z[1]][0]),z.push(Tt.$),i.push(Tt._$),ue=kt[f[f.length-2]][f[f.length-1]],f.push(ue);break;case 3:return!0}}return!0},"parse")},ve=function(){var st={EOF:1,parseError:t(function(c,f){if(this.yy.parser)this.yy.parser.parseError(c,f);else throw Error(c)},"parseError"),setInput:t(function(o,c){if(this.yy=c||this.yy||{},this._input=o,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];return this.offset=0,this},"setInput"),input:t(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var c=o.match(/(?:\r\n?|\n).*/g);if(c)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),o},"input"),unput:t(function(o){var c=o.length,f=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var x=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1)this.yylineno-=f.length-1;var z=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===x.length?this.yylloc.first_column:0)+x[x.length-f.length].length-f[0].length:this.yylloc.first_column-c},this.options.ranges)this.yylloc.range=[z[0],z[0]+this.yyleng-c];return this.yyleng=this.yytext.length,this},"unput"),more:t(function(){return this._more=!0,this},"more"),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return 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).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:t(function(o){this.unput(this.match.slice(o))},"less"),pastInput:t(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:t(function(){var o=this.match;if(o.length<20)o+=this._input.substr(0,20-o.length);return(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:t(function(){var o=this.pastInput(),c=Array(o.length+1).join("-");return o+this.upcomingInput()+`
5
5
  `+c+"^"},"showPosition"),test_match:t(function(o,c){var f,x,z;if(this.options.backtrack_lexer){if(z={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)z.yylloc.range=this.yylloc.range.slice(0)}if(x=o[0].match(/(?:\r\n?|\n).*/g),x)this.yylineno+=x.length;if(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+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],f=this.performAction.call(this,this.yy,this,c,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(f)return f;else if(this._backtrack){for(var i in z)this[i]=z[i];return!1}return!1},"test_match"),next:t(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var o,c,f,x;if(!this._more)this.yytext="",this.match="";var z=this._currentRules();for(var i=0;i<z.length;i++)if(f=this._input.match(this.rules[z[i]]),f&&(!c||f[0].length>c[0].length)){if(c=f,x=i,this.options.backtrack_lexer)if(o=this.test_match(f,z[i]),o!==!1)return o;else if(this._backtrack){c=!1;continue}else return!1;else if(!this.options.flex)break}if(c){if(o=this.test_match(c,z[x]),o!==!1)return o;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
6
- `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var c=this.next();if(c)return c;else return this.lex()},"lex"),begin:t(function(c){this.conditionStack.push(c)},"begin"),popState:t(function(){var c=this.conditionStack.length-1;if(c>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(c){if(c=this.conditionStack.length-1-Math.abs(c||0),c>=0)return this.conditionStack[c];else return"INITIAL"},"topState"),pushState:t(function(c){this.begin(c)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(c,f,x,z){var i=z;switch(x){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 15;case 37:return 11;case 38:return 64;case 39:return 10;case 40:return 65;case 41:return 65;case 42:return 14;case 43:return 13;case 44:return 67;case 45:return 66;case 46:return 12;case 47:return 8;case 48:return 5;case 49:return 18;case 50:return 56;case 51:return 63;case 52:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/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,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?:[^\x00-\x7F]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return st}();wt.lexer=Ce;function vt(){this.yy={}}return t(vt,"Parser"),vt.prototype=wt,wt.Parser=vt,new vt}();Qt.parser=Qt;var Ve=Qt,j=ke(),Ie=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{t(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:N.quadrantChart?.chartWidth||500,chartWidth:N.quadrantChart?.chartHeight||500,titlePadding:N.quadrantChart?.titlePadding||10,titleFontSize:N.quadrantChart?.titleFontSize||20,quadrantPadding:N.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:N.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:N.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:N.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:N.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:N.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:N.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:N.quadrantChart?.pointTextPadding||5,pointLabelFontSize:N.quadrantChart?.pointLabelFontSize||12,pointRadius:N.quadrantChart?.pointRadius||5,xAxisPosition:N.quadrantChart?.xAxisPosition||"top",yAxisPosition:N.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:N.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:N.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:j.quadrant1Fill,quadrant2Fill:j.quadrant2Fill,quadrant3Fill:j.quadrant3Fill,quadrant4Fill:j.quadrant4Fill,quadrant1TextFill:j.quadrant1TextFill,quadrant2TextFill:j.quadrant2TextFill,quadrant3TextFill:j.quadrant3TextFill,quadrant4TextFill:j.quadrant4TextFill,quadrantPointFill:j.quadrantPointFill,quadrantPointTextFill:j.quadrantPointTextFill,quadrantXAxisTextFill:j.quadrantXAxisTextFill,quadrantYAxisTextFill:j.quadrantYAxisTextFill,quadrantTitleFill:j.quadrantTitleFill,quadrantInternalBorderStrokeFill:j.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:j.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,a.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){a.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){a.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,m,y){let h=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,g={top:e==="top"&&r?h:0,bottom:e==="bottom"&&r?h:0},V=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,d={left:this.config.yAxisPosition==="left"&&m?V:0,right:this.config.yAxisPosition==="right"&&m?V:0},u=this.config.titleFontSize+this.config.titlePadding*2,D={top:y?u:0},P=this.config.quadrantPadding+d.left,v=this.config.quadrantPadding+g.top+D.top,q=this.config.chartWidth-this.config.quadrantPadding*2-d.left-d.right,k=this.config.chartHeight-this.config.quadrantPadding*2-g.top-g.bottom-D.top,_=q/2,b=k/2;return{xAxisSpace:g,yAxisSpace:d,titleSpace:D,quadrantSpace:{quadrantLeft:P,quadrantTop:v,quadrantWidth:q,quadrantHalfWidth:_,quadrantHeight:k,quadrantHalfHeight:b}}}getAxisLabels(e,r,m,y){let{quadrantSpace:h,titleSpace:g}=y,{quadrantHalfHeight:V,quadrantHeight:d,quadrantLeft:u,quadrantHalfWidth:D,quadrantTop:P,quadrantWidth:v}=h,q=Boolean(this.data.xAxisRightText),k=Boolean(this.data.yAxisTopText),_=[];if(this.data.xAxisLeftText&&r)_.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:u+(q?D/2:0),y:e==="top"?this.config.xAxisLabelPadding+g.top:this.config.xAxisLabelPadding+P+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:q?"center":"left",horizontalPos:"top",rotation:0});if(this.data.xAxisRightText&&r)_.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:u+D+(q?D/2:0),y:e==="top"?this.config.xAxisLabelPadding+g.top:this.config.xAxisLabelPadding+P+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:q?"center":"left",horizontalPos:"top",rotation:0});if(this.data.yAxisBottomText&&m)_.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+u+v+this.config.quadrantPadding,y:P+d-(k?V/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:k?"center":"left",horizontalPos:"top",rotation:-90});if(this.data.yAxisTopText&&m)_.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+u+v+this.config.quadrantPadding,y:P+V-(k?V/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:k?"center":"left",horizontalPos:"top",rotation:-90});return _}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:m,quadrantLeft:y,quadrantHalfWidth:h,quadrantTop:g}=r,V=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y+h,y:g,width:h,height:m,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y,y:g,width:h,height:m,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y,y:g+m,width:h,height:m,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y+h,y:g+m,width:h,height:m,fill:this.themeConfig.quadrant4Fill}];for(let d of V)if(d.text.x=d.x+d.width/2,this.data.points.length===0)d.text.y=d.y+d.height/2,d.text.horizontalPos="middle";else d.text.y=d.y+this.config.quadrantTextTopPadding,d.text.horizontalPos="top";return V}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:m,quadrantLeft:y,quadrantTop:h,quadrantWidth:g}=r,V=kt().domain([0,1]).range([y,g+y]),d=kt().domain([0,1]).range([m+h,h]);return this.data.points.map((D)=>{let P=this.classes.get(D.className);if(P)D={...P,...D};return{x:V(D.x),y:d(D.y),fill:D.color??this.themeConfig.quadrantPointFill,radius:D.radius??this.config.pointRadius,text:{text:D.text,fill:this.themeConfig.quadrantPointTextFill,x:V(D.x),y:d(D.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:D.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:D.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:m}=e,{quadrantHalfHeight:y,quadrantHeight:h,quadrantLeft:g,quadrantHalfWidth:V,quadrantTop:d,quadrantWidth:u}=m;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g-r,y1:d,x2:g+u+r,y2:d},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g+u,y1:d+r,x2:g+u,y2:d+h-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g-r,y1:d+h,x2:g+u+r,y2:d+h},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g,y1:d+r,x2:g,y2:d+h-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:g+V,y1:d+r,x2:g+V,y2:d+h-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:g+r,y1:d+y,x2:g+u-r,y2:d+y}]}getTitle(e){if(e)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2};return}build(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),m=this.config.showTitle&&!!this.data.titleText,y=this.data.points.length>0?"bottom":this.config.xAxisPosition,h=this.calculateSpace(y,e,r,m);return{points:this.getQuadrantPoints(h),quadrants:this.getQuadrants(h),axisLabels:this.getAxisLabels(y,e,r,h),borderLines:this.getBorders(h),title:this.getTitle(m)}}},Dt=class extends Error{static{t(this,"InvalidStyleError")}constructor(e,r,m){super(`value for ${e} ${r} is invalid, please use a valid ${m}`);this.name="InvalidStyleError"}};function Ot(e){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(e)}t(Ot,"validateHexCode");function xe(e){return!/^\d+$/.test(e)}t(xe,"validateNumber");function fe(e){return!/^\d+px$/.test(e)}t(fe,"validateSizeInPixels");function it(e){return O(e.trim(),l())}t(it,"textSanitizer");var M=new Ie;function ge(e){M.setData({quadrant1Text:it(e.text)})}t(ge,"setQuadrant1Text");function pe(e){M.setData({quadrant2Text:it(e.text)})}t(pe,"setQuadrant2Text");function ye(e){M.setData({quadrant3Text:it(e.text)})}t(ye,"setQuadrant3Text");function be(e){M.setData({quadrant4Text:it(e.text)})}t(be,"setQuadrant4Text");function Te(e){M.setData({xAxisLeftText:it(e.text)})}t(Te,"setXAxisLeftText");function me(e){M.setData({xAxisRightText:it(e.text)})}t(me,"setXAxisRightText");function qe(e){M.setData({yAxisTopText:it(e.text)})}t(qe,"setYAxisTopText");function Se(e){M.setData({yAxisBottomText:it(e.text)})}t(Se,"setYAxisBottomText");function zt(e){let r={};for(let m of e){let[y,h]=m.trim().split(/\s*:\s*/);if(y==="radius"){if(xe(h))throw new Dt(y,h,"number");r.radius=parseInt(h)}else if(y==="color"){if(Ot(h))throw new Dt(y,h,"hex code");r.color=h}else if(y==="stroke-color"){if(Ot(h))throw new Dt(y,h,"hex code");r.strokeColor=h}else if(y==="stroke-width"){if(fe(h))throw new Dt(y,h,"number of pixels (eg. 10px)");r.strokeWidth=h}else throw Error(`style named ${y} is not supported.`)}return r}t(zt,"parseStyles");function _e(e,r,m,y,h){let g=zt(h);M.addPoints([{x:m,y,text:it(e.text),className:r,...g}])}t(_e,"addPoint");function Ae(e,r){M.addClass(e,zt(r))}t(Ae,"addClass");function Fe(e){M.setConfig({chartWidth:e})}t(Fe,"setWidth");function Pe(e){M.setConfig({chartHeight:e})}t(Pe,"setHeight");function ve(){let e=l(),{themeVariables:r,quadrantChart:m}=e;if(m)M.setConfig(m);return M.setThemeConfig({quadrant1Fill:r.quadrant1Fill,quadrant2Fill:r.quadrant2Fill,quadrant3Fill:r.quadrant3Fill,quadrant4Fill:r.quadrant4Fill,quadrant1TextFill:r.quadrant1TextFill,quadrant2TextFill:r.quadrant2TextFill,quadrant3TextFill:r.quadrant3TextFill,quadrant4TextFill:r.quadrant4TextFill,quadrantPointFill:r.quadrantPointFill,quadrantPointTextFill:r.quadrantPointTextFill,quadrantXAxisTextFill:r.quadrantXAxisTextFill,quadrantYAxisTextFill:r.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:r.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:r.quadrantInternalBorderStrokeFill,quadrantTitleFill:r.quadrantTitleFill}),M.setData({titleText:R()}),M.build()}t(ve,"getQuadrantData");var we=t(function(){M.clear(),C()},"clear"),Be={setWidth:Fe,setHeight:Pe,setQuadrant1Text:ge,setQuadrant2Text:pe,setQuadrant3Text:ye,setQuadrant4Text:be,setXAxisLeftText:Te,setXAxisRightText:me,setYAxisTopText:qe,setYAxisBottomText:Se,parseStyles:zt,addPoint:_e,addClass:Ae,getQuadrantData:ve,clear:we,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},Re=t((e,r,m,y)=>{function h(n){return n==="top"?"hanging":"middle"}t(h,"getDominantBaseLine");function g(n){return n==="left"?"start":"middle"}t(g,"getTextAnchor");function V(n){return`translate(${n.x}, ${n.y}) rotate(${n.rotation||0})`}t(V,"getTransformation");let d=l();a.debug(`Rendering quadrant chart
7
- `+e);let u=d.securityLevel,D;if(u==="sandbox")D=p("#i"+r);let v=(u==="sandbox"?p(D.nodes()[0].contentDocument.body):p("body")).select(`[id="${r}"]`),q=v.append("g").attr("class","main"),k=d.quadrantChart?.chartWidth??500,_=d.quadrantChart?.chartHeight??500;F(v,_,k,d.quadrantChart?.useMaxWidth??!0),v.attr("viewBox","0 0 "+k+" "+_),y.db.setHeight(_),y.db.setWidth(k);let b=y.db.getQuadrantData(),I=q.append("g").attr("class","quadrants"),_t=q.append("g").attr("class","border"),At=q.append("g").attr("class","data-points"),Ft=q.append("g").attr("class","labels"),Pt=q.append("g").attr("class","title");if(b.title)Pt.append("text").attr("x",0).attr("y",0).attr("fill",b.title.fill).attr("font-size",b.title.fontSize).attr("dominant-baseline",h(b.title.horizontalPos)).attr("text-anchor",g(b.title.verticalPos)).attr("transform",V(b.title)).text(b.title.text);if(b.borderLines)_t.selectAll("line").data(b.borderLines).enter().append("line").attr("x1",(n)=>n.x1).attr("y1",(n)=>n.y1).attr("x2",(n)=>n.x2).attr("y2",(n)=>n.y2).style("stroke",(n)=>n.strokeFill).style("stroke-width",(n)=>n.strokeWidth);let mt=I.selectAll("g.quadrant").data(b.quadrants).enter().append("g").attr("class","quadrant");mt.append("rect").attr("x",(n)=>n.x).attr("y",(n)=>n.y).attr("width",(n)=>n.width).attr("height",(n)=>n.height).attr("fill",(n)=>n.fill),mt.append("text").attr("x",0).attr("y",0).attr("fill",(n)=>n.text.fill).attr("font-size",(n)=>n.text.fontSize).attr("dominant-baseline",(n)=>h(n.text.horizontalPos)).attr("text-anchor",(n)=>g(n.text.verticalPos)).attr("transform",(n)=>V(n.text)).text((n)=>n.text.text),Ft.selectAll("g.label").data(b.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((n)=>n.text).attr("fill",(n)=>n.fill).attr("font-size",(n)=>n.fontSize).attr("dominant-baseline",(n)=>h(n.horizontalPos)).attr("text-anchor",(n)=>g(n.verticalPos)).attr("transform",(n)=>V(n));let qt=At.selectAll("g.data-point").data(b.points).enter().append("g").attr("class","data-point");qt.append("circle").attr("cx",(n)=>n.x).attr("cy",(n)=>n.y).attr("r",(n)=>n.radius).attr("fill",(n)=>n.fill).attr("stroke",(n)=>n.strokeColor).attr("stroke-width",(n)=>n.strokeWidth),qt.append("text").attr("x",0).attr("y",0).text((n)=>n.text.text).attr("fill",(n)=>n.text.fill).attr("font-size",(n)=>n.text.fontSize).attr("dominant-baseline",(n)=>h(n.text.horizontalPos)).attr("text-anchor",(n)=>g(n.text.verticalPos)).attr("transform",(n)=>V(n.text))},"draw"),Ne={draw:Re},Me={parser:Ve,db:Be,renderer:Ne,styles:t(()=>"","styles")};export{Me as diagram};
6
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:t(function(){var c=this.next();if(c)return c;else return this.lex()},"lex"),begin:t(function(c){this.conditionStack.push(c)},"begin"),popState:t(function(){var c=this.conditionStack.length-1;if(c>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:t(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:t(function(c){if(c=this.conditionStack.length-1-Math.abs(c||0),c>=0)return this.conditionStack[c];else return"INITIAL"},"topState"),pushState:t(function(c){this.begin(c)},"pushState"),stateStackSize:t(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:t(function(c,f,x,z){var i=z;switch(x){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 15;case 37:return 11;case 38:return 64;case 39:return 10;case 40:return 65;case 41:return 65;case 42:return 14;case 43:return 13;case 44:return 67;case 45:return 66;case 46:return 12;case 47:return 8;case 48:return 5;case 49:return 18;case 50:return 56;case 51:return 63;case 52:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/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,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?:[^\x00-\x7F]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return st}();It.lexer=ve;function Pt(){this.yy={}}return t(Pt,"Parser"),Pt.prototype=It,It.Parser=Pt,new Pt}();Qt.parser=Qt;var ze=Qt,j=we(),Ve=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{t(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:M.quadrantChart?.chartWidth||500,chartWidth:M.quadrantChart?.chartHeight||500,titlePadding:M.quadrantChart?.titlePadding||10,titleFontSize:M.quadrantChart?.titleFontSize||20,quadrantPadding:M.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:M.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:M.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:M.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:M.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:M.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:M.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:M.quadrantChart?.pointTextPadding||5,pointLabelFontSize:M.quadrantChart?.pointLabelFontSize||12,pointRadius:M.quadrantChart?.pointRadius||5,xAxisPosition:M.quadrantChart?.xAxisPosition||"top",yAxisPosition:M.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:M.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:M.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:j.quadrant1Fill,quadrant2Fill:j.quadrant2Fill,quadrant3Fill:j.quadrant3Fill,quadrant4Fill:j.quadrant4Fill,quadrant1TextFill:j.quadrant1TextFill,quadrant2TextFill:j.quadrant2TextFill,quadrant3TextFill:j.quadrant3TextFill,quadrant4TextFill:j.quadrant4TextFill,quadrantPointFill:j.quadrantPointFill,quadrantPointTextFill:j.quadrantPointTextFill,quadrantXAxisTextFill:j.quadrantXAxisTextFill,quadrantYAxisTextFill:j.quadrantYAxisTextFill,quadrantTitleFill:j.quadrantTitleFill,quadrantInternalBorderStrokeFill:j.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:j.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,a.info("clear called")}setData(e){this.data={...this.data,...e}}addPoints(e){this.data.points=[...e,...this.data.points]}addClass(e,r){this.classes.set(e,r)}setConfig(e){a.trace("setConfig called with: ",e),this.config={...this.config,...e}}setThemeConfig(e){a.trace("setThemeConfig called with: ",e),this.themeConfig={...this.themeConfig,...e}}calculateSpace(e,r,m,y){let h=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,g={top:e==="top"&&r?h:0,bottom:e==="bottom"&&r?h:0},V=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,d={left:this.config.yAxisPosition==="left"&&m?V:0,right:this.config.yAxisPosition==="right"&&m?V:0},u=this.config.titleFontSize+this.config.titlePadding*2,D={top:y?u:0},P=this.config.quadrantPadding+d.left,v=this.config.quadrantPadding+g.top+D.top,q=this.config.chartWidth-this.config.quadrantPadding*2-d.left-d.right,k=this.config.chartHeight-this.config.quadrantPadding*2-g.top-g.bottom-D.top,_=q/2,b=k/2;return{xAxisSpace:g,yAxisSpace:d,titleSpace:D,quadrantSpace:{quadrantLeft:P,quadrantTop:v,quadrantWidth:q,quadrantHalfWidth:_,quadrantHeight:k,quadrantHalfHeight:b}}}getAxisLabels(e,r,m,y){let{quadrantSpace:h,titleSpace:g}=y,{quadrantHalfHeight:V,quadrantHeight:d,quadrantLeft:u,quadrantHalfWidth:D,quadrantTop:P,quadrantWidth:v}=h,q=Boolean(this.data.xAxisRightText),k=Boolean(this.data.yAxisTopText),_=[];if(this.data.xAxisLeftText&&r)_.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:u+(q?D/2:0),y:e==="top"?this.config.xAxisLabelPadding+g.top:this.config.xAxisLabelPadding+P+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:q?"center":"left",horizontalPos:"top",rotation:0});if(this.data.xAxisRightText&&r)_.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:u+D+(q?D/2:0),y:e==="top"?this.config.xAxisLabelPadding+g.top:this.config.xAxisLabelPadding+P+d+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:q?"center":"left",horizontalPos:"top",rotation:0});if(this.data.yAxisBottomText&&m)_.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+u+v+this.config.quadrantPadding,y:P+d-(k?V/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:k?"center":"left",horizontalPos:"top",rotation:-90});if(this.data.yAxisTopText&&m)_.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+u+v+this.config.quadrantPadding,y:P+V-(k?V/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:k?"center":"left",horizontalPos:"top",rotation:-90});return _}getQuadrants(e){let{quadrantSpace:r}=e,{quadrantHalfHeight:m,quadrantLeft:y,quadrantHalfWidth:h,quadrantTop:g}=r,V=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y+h,y:g,width:h,height:m,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y,y:g,width:h,height:m,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y,y:g+m,width:h,height:m,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:y+h,y:g+m,width:h,height:m,fill:this.themeConfig.quadrant4Fill}];for(let d of V)if(d.text.x=d.x+d.width/2,this.data.points.length===0)d.text.y=d.y+d.height/2,d.text.horizontalPos="middle";else d.text.y=d.y+this.config.quadrantTextTopPadding,d.text.horizontalPos="top";return V}getQuadrantPoints(e){let{quadrantSpace:r}=e,{quadrantHeight:m,quadrantLeft:y,quadrantTop:h,quadrantWidth:g}=r,V=wt().domain([0,1]).range([y,g+y]),d=wt().domain([0,1]).range([m+h,h]);return this.data.points.map((D)=>{let P=this.classes.get(D.className);if(P)D={...P,...D};return{x:V(D.x),y:d(D.y),fill:D.color??this.themeConfig.quadrantPointFill,radius:D.radius??this.config.pointRadius,text:{text:D.text,fill:this.themeConfig.quadrantPointTextFill,x:V(D.x),y:d(D.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:D.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:D.strokeWidth??"0px"}})}getBorders(e){let r=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:m}=e,{quadrantHalfHeight:y,quadrantHeight:h,quadrantLeft:g,quadrantHalfWidth:V,quadrantTop:d,quadrantWidth:u}=m;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g-r,y1:d,x2:g+u+r,y2:d},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g+u,y1:d+r,x2:g+u,y2:d+h-r},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g-r,y1:d+h,x2:g+u+r,y2:d+h},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:g,y1:d+r,x2:g,y2:d+h-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:g+V,y1:d+r,x2:g+V,y2:d+h-r},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:g+r,y1:d+y,x2:g+u-r,y2:d+y}]}getTitle(e){if(e)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2};return}build(){let e=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),r=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),m=this.config.showTitle&&!!this.data.titleText,y=this.data.points.length>0?"bottom":this.config.xAxisPosition,h=this.calculateSpace(y,e,r,m);return{points:this.getQuadrantPoints(h),quadrants:this.getQuadrants(h),axisLabels:this.getAxisLabels(y,e,r,h),borderLines:this.getBorders(h),title:this.getTitle(m)}}},Et=class extends Error{static{t(this,"InvalidStyleError")}constructor(e,r,m){super(`value for ${e} ${r} is invalid, please use a valid ${m}`);this.name="InvalidStyleError"}};function Ot(e){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(e)}t(Ot,"validateHexCode");function xe(e){return!/^\d+$/.test(e)}t(xe,"validateNumber");function fe(e){return!/^\d+px$/.test(e)}t(fe,"validateSizeInPixels");function it(e){return O(e.trim(),l())}t(it,"textSanitizer");var X=new Ve;function ge(e){X.setData({quadrant1Text:it(e.text)})}t(ge,"setQuadrant1Text");function pe(e){X.setData({quadrant2Text:it(e.text)})}t(pe,"setQuadrant2Text");function ye(e){X.setData({quadrant3Text:it(e.text)})}t(ye,"setQuadrant3Text");function be(e){X.setData({quadrant4Text:it(e.text)})}t(be,"setQuadrant4Text");function Te(e){X.setData({xAxisLeftText:it(e.text)})}t(Te,"setXAxisLeftText");function me(e){X.setData({xAxisRightText:it(e.text)})}t(me,"setXAxisRightText");function qe(e){X.setData({yAxisTopText:it(e.text)})}t(qe,"setYAxisTopText");function ke(e){X.setData({yAxisBottomText:it(e.text)})}t(ke,"setYAxisBottomText");function Dt(e){let r={};for(let m of e){let[y,h]=m.trim().split(/\s*:\s*/);if(y==="radius"){if(xe(h))throw new Et(y,h,"number");r.radius=parseInt(h)}else if(y==="color"){if(Ot(h))throw new Et(y,h,"hex code");r.color=h}else if(y==="stroke-color"){if(Ot(h))throw new Et(y,h,"hex code");r.strokeColor=h}else if(y==="stroke-width"){if(fe(h))throw new Et(y,h,"number of pixels (eg. 10px)");r.strokeWidth=h}else throw Error(`style named ${y} is not supported.`)}return r}t(Dt,"parseStyles");function Se(e,r,m,y,h){let g=Dt(h);X.addPoints([{x:m,y,text:it(e.text),className:r,...g}])}t(Se,"addPoint");function _e(e,r){X.addClass(e,Dt(r))}t(_e,"addClass");function Ae(e){X.setConfig({chartWidth:e})}t(Ae,"setWidth");function Fe(e){X.setConfig({chartHeight:e})}t(Fe,"setHeight");function Pe(){let e=l(),{themeVariables:r,quadrantChart:m}=e;if(m)X.setConfig(m);return X.setThemeConfig({quadrant1Fill:r.quadrant1Fill,quadrant2Fill:r.quadrant2Fill,quadrant3Fill:r.quadrant3Fill,quadrant4Fill:r.quadrant4Fill,quadrant1TextFill:r.quadrant1TextFill,quadrant2TextFill:r.quadrant2TextFill,quadrant3TextFill:r.quadrant3TextFill,quadrant4TextFill:r.quadrant4TextFill,quadrantPointFill:r.quadrantPointFill,quadrantPointTextFill:r.quadrantPointTextFill,quadrantXAxisTextFill:r.quadrantXAxisTextFill,quadrantYAxisTextFill:r.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:r.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:r.quadrantInternalBorderStrokeFill,quadrantTitleFill:r.quadrantTitleFill}),X.setData({titleText:R()}),X.build()}t(Pe,"getQuadrantData");var Ie=t(function(){X.clear(),C()},"clear"),Be={setWidth:Ae,setHeight:Fe,setQuadrant1Text:ge,setQuadrant2Text:pe,setQuadrant3Text:ye,setQuadrant4Text:be,setXAxisLeftText:Te,setXAxisRightText:me,setYAxisTopText:qe,setYAxisBottomText:ke,parseStyles:Dt,addPoint:Se,addClass:_e,getQuadrantData:Pe,clear:Ie,setAccTitle:S,getAccTitle:E,setDiagramTitle:L,getDiagramTitle:R,getAccDescription:A,setAccDescription:T},Re=t((e,r,m,y)=>{function h(n){return n==="top"?"hanging":"middle"}t(h,"getDominantBaseLine");function g(n){return n==="left"?"start":"middle"}t(g,"getTextAnchor");function V(n){return`translate(${n.x}, ${n.y}) rotate(${n.rotation||0})`}t(V,"getTransformation");let d=l();a.debug(`Rendering quadrant chart
7
+ `+e);let u=d.securityLevel,D;if(u==="sandbox")D=p("#i"+r);let v=(u==="sandbox"?p(D.nodes()[0].contentDocument.body):p("body")).select(`[id="${r}"]`),q=v.append("g").attr("class","main"),k=d.quadrantChart?.chartWidth??500,_=d.quadrantChart?.chartHeight??500;F(v,_,k,d.quadrantChart?.useMaxWidth??!0),v.attr("viewBox","0 0 "+k+" "+_),y.db.setHeight(_),y.db.setWidth(k);let b=y.db.getQuadrantData(),I=q.append("g").attr("class","quadrants"),St=q.append("g").attr("class","border"),_t=q.append("g").attr("class","data-points"),At=q.append("g").attr("class","labels"),Ft=q.append("g").attr("class","title");if(b.title)Ft.append("text").attr("x",0).attr("y",0).attr("fill",b.title.fill).attr("font-size",b.title.fontSize).attr("dominant-baseline",h(b.title.horizontalPos)).attr("text-anchor",g(b.title.verticalPos)).attr("transform",V(b.title)).text(b.title.text);if(b.borderLines)St.selectAll("line").data(b.borderLines).enter().append("line").attr("x1",(n)=>n.x1).attr("y1",(n)=>n.y1).attr("x2",(n)=>n.x2).attr("y2",(n)=>n.y2).style("stroke",(n)=>n.strokeFill).style("stroke-width",(n)=>n.strokeWidth);let mt=I.selectAll("g.quadrant").data(b.quadrants).enter().append("g").attr("class","quadrant");mt.append("rect").attr("x",(n)=>n.x).attr("y",(n)=>n.y).attr("width",(n)=>n.width).attr("height",(n)=>n.height).attr("fill",(n)=>n.fill),mt.append("text").attr("x",0).attr("y",0).attr("fill",(n)=>n.text.fill).attr("font-size",(n)=>n.text.fontSize).attr("dominant-baseline",(n)=>h(n.text.horizontalPos)).attr("text-anchor",(n)=>g(n.text.verticalPos)).attr("transform",(n)=>V(n.text)).text((n)=>n.text.text),At.selectAll("g.label").data(b.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((n)=>n.text).attr("fill",(n)=>n.fill).attr("font-size",(n)=>n.fontSize).attr("dominant-baseline",(n)=>h(n.horizontalPos)).attr("text-anchor",(n)=>g(n.verticalPos)).attr("transform",(n)=>V(n));let qt=_t.selectAll("g.data-point").data(b.points).enter().append("g").attr("class","data-point");qt.append("circle").attr("cx",(n)=>n.x).attr("cy",(n)=>n.y).attr("r",(n)=>n.radius).attr("fill",(n)=>n.fill).attr("stroke",(n)=>n.strokeColor).attr("stroke-width",(n)=>n.strokeWidth),qt.append("text").attr("x",0).attr("y",0).text((n)=>n.text.text).attr("fill",(n)=>n.text.fill).attr("font-size",(n)=>n.text.fontSize).attr("dominant-baseline",(n)=>h(n.text.horizontalPos)).attr("text-anchor",(n)=>g(n.text.verticalPos)).attr("transform",(n)=>V(n.text))},"draw"),Ne={draw:Re},Me={parser:ze,db:Be,renderer:Ne,styles:t(()=>"","styles")};export{Me as diagram};
@@ -0,0 +1 @@
1
+ import{Si}from"./chunk-n9v14vyd.js";export{Si as createCynefinServices};