web-annotation-renderer 0.6.1 → 0.6.2

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 (81) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.js +26 -24
  4. package/dist/index.js.map +1 -1
  5. package/dist/index10.cjs +1 -1
  6. package/dist/index10.js +1 -1
  7. package/dist/index11.cjs +1 -1
  8. package/dist/index11.js +2 -2
  9. package/dist/index13.cjs +1 -1
  10. package/dist/index13.js +1 -1
  11. package/dist/index14.cjs +1 -1
  12. package/dist/index14.js +1 -1
  13. package/dist/index15.cjs +1 -1
  14. package/dist/index15.js +1 -1
  15. package/dist/index16.cjs +1 -1
  16. package/dist/index16.js +1 -1
  17. package/dist/index17.cjs +1 -1
  18. package/dist/index17.js +1 -1
  19. package/dist/index18.cjs +1 -1
  20. package/dist/index18.cjs.map +1 -1
  21. package/dist/index18.js +22 -117
  22. package/dist/index18.js.map +1 -1
  23. package/dist/index19.cjs +1 -1
  24. package/dist/index19.cjs.map +1 -1
  25. package/dist/index19.js +83 -69
  26. package/dist/index19.js.map +1 -1
  27. package/dist/index20.cjs +1 -1
  28. package/dist/index20.cjs.map +1 -1
  29. package/dist/index20.js +100 -76
  30. package/dist/index20.js.map +1 -1
  31. package/dist/index21.cjs +1 -1
  32. package/dist/index21.cjs.map +1 -1
  33. package/dist/index21.js +77 -138
  34. package/dist/index21.js.map +1 -1
  35. package/dist/index22.cjs +1 -1
  36. package/dist/index22.cjs.map +1 -1
  37. package/dist/index22.js +139 -36
  38. package/dist/index22.js.map +1 -1
  39. package/dist/index23.cjs +1 -1
  40. package/dist/index23.cjs.map +1 -1
  41. package/dist/index23.js +35 -34
  42. package/dist/index23.js.map +1 -1
  43. package/dist/index24.cjs +1 -1
  44. package/dist/index24.cjs.map +1 -1
  45. package/dist/index24.js +27 -28
  46. package/dist/index24.js.map +1 -1
  47. package/dist/index25.cjs +1 -1
  48. package/dist/index25.cjs.map +1 -1
  49. package/dist/index25.js +38 -40
  50. package/dist/index25.js.map +1 -1
  51. package/dist/index26.cjs +1 -1
  52. package/dist/index26.cjs.map +1 -1
  53. package/dist/index26.js +39 -4
  54. package/dist/index26.js.map +1 -1
  55. package/dist/index27.cjs +1 -1
  56. package/dist/index27.js +4 -4
  57. package/dist/index28.cjs +1 -1
  58. package/dist/index28.cjs.map +1 -1
  59. package/dist/index28.js +5 -71
  60. package/dist/index28.js.map +1 -1
  61. package/dist/index29.cjs +1 -1
  62. package/dist/index29.cjs.map +1 -1
  63. package/dist/index29.js +70 -4
  64. package/dist/index29.js.map +1 -1
  65. package/dist/index30.cjs +1 -1
  66. package/dist/index30.cjs.map +1 -1
  67. package/dist/index30.js +4 -991
  68. package/dist/index30.js.map +1 -1
  69. package/dist/index31.cjs +2 -0
  70. package/dist/index31.cjs.map +1 -0
  71. package/dist/index31.js +995 -0
  72. package/dist/index31.js.map +1 -0
  73. package/dist/index5.cjs +1 -1
  74. package/dist/index5.cjs.map +1 -1
  75. package/dist/index5.js +63 -56
  76. package/dist/index5.js.map +1 -1
  77. package/dist/index9.cjs +1 -1
  78. package/dist/index9.cjs.map +1 -1
  79. package/dist/index9.js +17 -15
  80. package/dist/index9.js.map +1 -1
  81. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index30.js","sources":["../node_modules/roughjs/bundled/rough.esm.js"],"sourcesContent":["function t(t,e,s){if(t&&t.length){const[n,o]=e,a=Math.PI/180*s,h=Math.cos(a),r=Math.sin(a);for(const e of t){const[t,s]=e;e[0]=(t-n)*h-(s-o)*r+n,e[1]=(t-n)*r+(s-o)*h+o}}}function e(t,e){return t[0]===e[0]&&t[1]===e[1]}function s(s,n,o,a=1){const h=o,r=Math.max(n,.1),i=s[0]&&s[0][0]&&\"number\"==typeof s[0][0]?[s]:s,c=[0,0];if(h)for(const e of i)t(e,c,h);const l=function(t,s,n){const o=[];for(const s of t){const t=[...s];e(t[0],t[t.length-1])||t.push([t[0][0],t[0][1]]),t.length>2&&o.push(t)}const a=[];s=Math.max(s,.1);const h=[];for(const t of o)for(let e=0;e<t.length-1;e++){const s=t[e],n=t[e+1];if(s[1]!==n[1]){const t=Math.min(s[1],n[1]);h.push({ymin:t,ymax:Math.max(s[1],n[1]),x:t===s[1]?s[0]:n[0],islope:(n[0]-s[0])/(n[1]-s[1])})}}if(h.sort(((t,e)=>t.ymin<e.ymin?-1:t.ymin>e.ymin?1:t.x<e.x?-1:t.x>e.x?1:t.ymax===e.ymax?0:(t.ymax-e.ymax)/Math.abs(t.ymax-e.ymax))),!h.length)return a;let r=[],i=h[0].ymin,c=0;for(;r.length||h.length;){if(h.length){let t=-1;for(let e=0;e<h.length&&!(h[e].ymin>i);e++)t=e;h.splice(0,t+1).forEach((t=>{r.push({s:i,edge:t})}))}if(r=r.filter((t=>!(t.edge.ymax<=i))),r.sort(((t,e)=>t.edge.x===e.edge.x?0:(t.edge.x-e.edge.x)/Math.abs(t.edge.x-e.edge.x))),(1!==n||c%s==0)&&r.length>1)for(let t=0;t<r.length;t+=2){const e=t+1;if(e>=r.length)break;const s=r[t].edge,n=r[e].edge;a.push([[Math.round(s.x),i],[Math.round(n.x),i]])}i+=n,r.forEach((t=>{t.edge.x=t.edge.x+n*t.edge.islope})),c++}return a}(i,r,a);if(h){for(const e of i)t(e,c,-h);!function(e,s,n){const o=[];e.forEach((t=>o.push(...t))),t(o,s,n)}(l,c,-h)}return l}function n(t,e){var n;const o=e.hachureAngle+90;let a=e.hachureGap;a<0&&(a=4*e.strokeWidth),a=Math.round(Math.max(a,.1));let h=1;return e.roughness>=1&&((null===(n=e.randomizer)||void 0===n?void 0:n.next())||Math.random())>.7&&(h=a),s(t,a,o,h||1)}class o{constructor(t){this.helper=t}fillPolygons(t,e){return this._fillPolygons(t,e)}_fillPolygons(t,e){const s=n(t,e);return{type:\"fillSketch\",ops:this.renderLines(s,e)}}renderLines(t,e){const s=[];for(const n of t)s.push(...this.helper.doubleLineOps(n[0][0],n[0][1],n[1][0],n[1][1],e));return s}}function a(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class h extends o{fillPolygons(t,e){let s=e.hachureGap;s<0&&(s=4*e.strokeWidth),s=Math.max(s,.1);const o=n(t,Object.assign({},e,{hachureGap:s})),h=Math.PI/180*e.hachureAngle,r=[],i=.5*s*Math.cos(h),c=.5*s*Math.sin(h);for(const[t,e]of o)a([t,e])&&r.push([[t[0]-i,t[1]+c],[...e]],[[t[0]+i,t[1]-c],[...e]]);return{type:\"fillSketch\",ops:this.renderLines(r,e)}}}class r extends o{fillPolygons(t,e){const s=this._fillPolygons(t,e),n=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),o=this._fillPolygons(t,n);return s.ops=s.ops.concat(o.ops),s}}class i{constructor(t){this.helper=t}fillPolygons(t,e){const s=n(t,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(s,e)}dotsOnLines(t,e){const s=[];let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.max(n,.1);let o=e.fillWeight;o<0&&(o=e.strokeWidth/2);const h=n/4;for(const r of t){const t=a(r),i=t/n,c=Math.ceil(i)-1,l=t-c*n,u=(r[0][0]+r[1][0])/2-n/4,p=Math.min(r[0][1],r[1][1]);for(let t=0;t<c;t++){const a=p+l+t*n,r=u-h+2*Math.random()*h,i=a-h+2*Math.random()*h,c=this.helper.ellipse(r,i,o,o,e);s.push(...c.ops)}}return{type:\"fillSketch\",ops:s}}}class c{constructor(t){this.helper=t}fillPolygons(t,e){const s=n(t,e);return{type:\"fillSketch\",ops:this.dashedLine(s,e)}}dashedLine(t,e){const s=e.dashOffset<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashOffset,n=e.dashGap<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashGap,o=[];return t.forEach((t=>{const h=a(t),r=Math.floor(h/(s+n)),i=(h+n-r*(s+n))/2;let c=t[0],l=t[1];c[0]>l[0]&&(c=t[1],l=t[0]);const u=Math.atan((l[1]-c[1])/(l[0]-c[0]));for(let t=0;t<r;t++){const a=t*(s+n),h=a+s,r=[c[0]+a*Math.cos(u)+i*Math.cos(u),c[1]+a*Math.sin(u)+i*Math.sin(u)],l=[c[0]+h*Math.cos(u)+i*Math.cos(u),c[1]+h*Math.sin(u)+i*Math.sin(u)];o.push(...this.helper.doubleLineOps(r[0],r[1],l[0],l[1],e))}})),o}}class l{constructor(t){this.helper=t}fillPolygons(t,e){const s=e.hachureGap<0?4*e.strokeWidth:e.hachureGap,o=e.zigzagOffset<0?s:e.zigzagOffset,a=n(t,e=Object.assign({},e,{hachureGap:s+o}));return{type:\"fillSketch\",ops:this.zigzagLines(a,o,e)}}zigzagLines(t,e,s){const n=[];return t.forEach((t=>{const o=a(t),h=Math.round(o/(2*e));let r=t[0],i=t[1];r[0]>i[0]&&(r=t[1],i=t[0]);const c=Math.atan((i[1]-r[1])/(i[0]-r[0]));for(let t=0;t<h;t++){const o=2*t*e,a=2*(t+1)*e,h=Math.sqrt(2*Math.pow(e,2)),i=[r[0]+o*Math.cos(c),r[1]+o*Math.sin(c)],l=[r[0]+a*Math.cos(c),r[1]+a*Math.sin(c)],u=[i[0]+h*Math.cos(c+Math.PI/4),i[1]+h*Math.sin(c+Math.PI/4)];n.push(...this.helper.doubleLineOps(i[0],i[1],u[0],u[1],s),...this.helper.doubleLineOps(u[0],u[1],l[0],l[1],s))}})),n}}const u={};class p{constructor(t){this.seed=t}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}const f=0,d=1,g=2,M={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};function k(t,e){return t.type===e}function b(t){const e=[],s=function(t){const e=new Array;for(;\"\"!==t;)if(t.match(/^([ \\t\\r\\n,]+)/))t=t.substr(RegExp.$1.length);else if(t.match(/^([aAcChHlLmMqQsStTvVzZ])/))e[e.length]={type:f,text:RegExp.$1},t=t.substr(RegExp.$1.length);else{if(!t.match(/^(([-+]?[0-9]+(\\.[0-9]*)?|[-+]?\\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];e[e.length]={type:d,text:`${parseFloat(RegExp.$1)}`},t=t.substr(RegExp.$1.length)}return e[e.length]={type:g,text:\"\"},e}(t);let n=\"BOD\",o=0,a=s[o];for(;!k(a,g);){let h=0;const r=[];if(\"BOD\"===n){if(\"M\"!==a.text&&\"m\"!==a.text)return b(\"M0,0\"+t);o++,h=M[a.text],n=a.text}else k(a,d)?h=M[n]:(o++,h=M[a.text],n=a.text);if(!(o+h<s.length))throw new Error(\"Path data ended short\");for(let t=o;t<o+h;t++){const e=s[t];if(!k(e,d))throw new Error(\"Param not a number: \"+n+\",\"+e.text);r[r.length]=+e.text}if(\"number\"!=typeof M[n])throw new Error(\"Bad segment: \"+n);{const t={key:n,data:r};e.push(t),o+=h,a=s[o],\"M\"===n&&(n=\"L\"),\"m\"===n&&(n=\"l\")}}return e}function y(t){let e=0,s=0,n=0,o=0;const a=[];for(const{key:h,data:r}of t)switch(h){case\"M\":a.push({key:\"M\",data:[...r]}),[e,s]=r,[n,o]=r;break;case\"m\":e+=r[0],s+=r[1],a.push({key:\"M\",data:[e,s]}),n=e,o=s;break;case\"L\":a.push({key:\"L\",data:[...r]}),[e,s]=r;break;case\"l\":e+=r[0],s+=r[1],a.push({key:\"L\",data:[e,s]});break;case\"C\":a.push({key:\"C\",data:[...r]}),e=r[4],s=r[5];break;case\"c\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"C\",data:t}),e=t[4],s=t[5];break}case\"Q\":a.push({key:\"Q\",data:[...r]}),e=r[2],s=r[3];break;case\"q\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"Q\",data:t}),e=t[2],s=t[3];break}case\"A\":a.push({key:\"A\",data:[...r]}),e=r[5],s=r[6];break;case\"a\":e+=r[5],s+=r[6],a.push({key:\"A\",data:[r[0],r[1],r[2],r[3],r[4],e,s]});break;case\"H\":a.push({key:\"H\",data:[...r]}),e=r[0];break;case\"h\":e+=r[0],a.push({key:\"H\",data:[e]});break;case\"V\":a.push({key:\"V\",data:[...r]}),s=r[0];break;case\"v\":s+=r[0],a.push({key:\"V\",data:[s]});break;case\"S\":a.push({key:\"S\",data:[...r]}),e=r[2],s=r[3];break;case\"s\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"S\",data:t}),e=t[2],s=t[3];break}case\"T\":a.push({key:\"T\",data:[...r]}),e=r[0],s=r[1];break;case\"t\":e+=r[0],s+=r[1],a.push({key:\"T\",data:[e,s]});break;case\"Z\":case\"z\":a.push({key:\"Z\",data:[]}),e=n,s=o}return a}function m(t){const e=[];let s=\"\",n=0,o=0,a=0,h=0,r=0,i=0;for(const{key:c,data:l}of t){switch(c){case\"M\":e.push({key:\"M\",data:[...l]}),[n,o]=l,[a,h]=l;break;case\"C\":e.push({key:\"C\",data:[...l]}),n=l[4],o=l[5],r=l[2],i=l[3];break;case\"L\":e.push({key:\"L\",data:[...l]}),[n,o]=l;break;case\"H\":n=l[0],e.push({key:\"L\",data:[n,o]});break;case\"V\":o=l[0],e.push({key:\"L\",data:[n,o]});break;case\"S\":{let t=0,a=0;\"C\"===s||\"S\"===s?(t=n+(n-r),a=o+(o-i)):(t=n,a=o),e.push({key:\"C\",data:[t,a,...l]}),r=l[0],i=l[1],n=l[2],o=l[3];break}case\"T\":{const[t,a]=l;let h=0,c=0;\"Q\"===s||\"T\"===s?(h=n+(n-r),c=o+(o-i)):(h=n,c=o);const u=n+2*(h-n)/3,p=o+2*(c-o)/3,f=t+2*(h-t)/3,d=a+2*(c-a)/3;e.push({key:\"C\",data:[u,p,f,d,t,a]}),r=h,i=c,n=t,o=a;break}case\"Q\":{const[t,s,a,h]=l,c=n+2*(t-n)/3,u=o+2*(s-o)/3,p=a+2*(t-a)/3,f=h+2*(s-h)/3;e.push({key:\"C\",data:[c,u,p,f,a,h]}),r=t,i=s,n=a,o=h;break}case\"A\":{const t=Math.abs(l[0]),s=Math.abs(l[1]),a=l[2],h=l[3],r=l[4],i=l[5],c=l[6];if(0===t||0===s)e.push({key:\"C\",data:[n,o,i,c,i,c]}),n=i,o=c;else if(n!==i||o!==c){x(n,o,i,c,t,s,a,h,r).forEach((function(t){e.push({key:\"C\",data:t})})),n=i,o=c}break}case\"Z\":e.push({key:\"Z\",data:[]}),n=a,o=h}s=c}return e}function w(t,e,s){return[t*Math.cos(s)-e*Math.sin(s),t*Math.sin(s)+e*Math.cos(s)]}function x(t,e,s,n,o,a,h,r,i,c){const l=(u=h,Math.PI*u/180);var u;let p=[],f=0,d=0,g=0,M=0;if(c)[f,d,g,M]=c;else{[t,e]=w(t,e,-l),[s,n]=w(s,n,-l);const h=(t-s)/2,c=(e-n)/2;let u=h*h/(o*o)+c*c/(a*a);u>1&&(u=Math.sqrt(u),o*=u,a*=u);const p=o*o,k=a*a,b=p*k-p*c*c-k*h*h,y=p*c*c+k*h*h,m=(r===i?-1:1)*Math.sqrt(Math.abs(b/y));g=m*o*c/a+(t+s)/2,M=m*-a*h/o+(e+n)/2,f=Math.asin(parseFloat(((e-M)/a).toFixed(9))),d=Math.asin(parseFloat(((n-M)/a).toFixed(9))),t<g&&(f=Math.PI-f),s<g&&(d=Math.PI-d),f<0&&(f=2*Math.PI+f),d<0&&(d=2*Math.PI+d),i&&f>d&&(f-=2*Math.PI),!i&&d>f&&(d-=2*Math.PI)}let k=d-f;if(Math.abs(k)>120*Math.PI/180){const t=d,e=s,r=n;d=i&&d>f?f+120*Math.PI/180*1:f+120*Math.PI/180*-1,p=x(s=g+o*Math.cos(d),n=M+a*Math.sin(d),e,r,o,a,h,0,i,[d,t,g,M])}k=d-f;const b=Math.cos(f),y=Math.sin(f),m=Math.cos(d),P=Math.sin(d),v=Math.tan(k/4),S=4/3*o*v,O=4/3*a*v,L=[t,e],T=[t+S*y,e-O*b],D=[s+S*P,n-O*m],A=[s,n];if(T[0]=2*L[0]-T[0],T[1]=2*L[1]-T[1],c)return[T,D,A].concat(p);{p=[T,D,A].concat(p);const t=[];for(let e=0;e<p.length;e+=3){const s=w(p[e][0],p[e][1],l),n=w(p[e+1][0],p[e+1][1],l),o=w(p[e+2][0],p[e+2][1],l);t.push([s[0],s[1],n[0],n[1],o[0],o[1]])}return t}}const P={randOffset:function(t,e){return G(t,e)},randOffsetWithRange:function(t,e,s){return E(t,e,s)},ellipse:function(t,e,s,n,o){const a=T(s,n,o);return D(t,e,o,a).opset},doubleLineOps:function(t,e,s,n,o){return $(t,e,s,n,o,!0)}};function v(t,e,s,n,o){return{type:\"path\",ops:$(t,e,s,n,o)}}function S(t,e,s){const n=(t||[]).length;if(n>2){const o=[];for(let e=0;e<n-1;e++)o.push(...$(t[e][0],t[e][1],t[e+1][0],t[e+1][1],s));return e&&o.push(...$(t[n-1][0],t[n-1][1],t[0][0],t[0][1],s)),{type:\"path\",ops:o}}return 2===n?v(t[0][0],t[0][1],t[1][0],t[1][1],s):{type:\"path\",ops:[]}}function O(t,e,s,n,o){return function(t,e){return S(t,!0,e)}([[t,e],[t+s,e],[t+s,e+n],[t,e+n]],o)}function L(t,e){if(t.length){const s=\"number\"==typeof t[0][0]?[t]:t,n=j(s[0],1*(1+.2*e.roughness),e),o=e.disableMultiStroke?[]:j(s[0],1.5*(1+.22*e.roughness),z(e));for(let t=1;t<s.length;t++){const a=s[t];if(a.length){const t=j(a,1*(1+.2*e.roughness),e),s=e.disableMultiStroke?[]:j(a,1.5*(1+.22*e.roughness),z(e));for(const e of t)\"move\"!==e.op&&n.push(e);for(const t of s)\"move\"!==t.op&&o.push(t)}}return{type:\"path\",ops:n.concat(o)}}return{type:\"path\",ops:[]}}function T(t,e,s){const n=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(t/2,2)+Math.pow(e/2,2))/2)),o=Math.ceil(Math.max(s.curveStepCount,s.curveStepCount/Math.sqrt(200)*n)),a=2*Math.PI/o;let h=Math.abs(t/2),r=Math.abs(e/2);const i=1-s.curveFitting;return h+=G(h*i,s),r+=G(r*i,s),{increment:a,rx:h,ry:r}}function D(t,e,s,n){const[o,a]=F(n.increment,t,e,n.rx,n.ry,1,n.increment*E(.1,E(.4,1,s),s),s);let h=q(o,null,s);if(!s.disableMultiStroke&&0!==s.roughness){const[o]=F(n.increment,t,e,n.rx,n.ry,1.5,0,s),a=q(o,null,s);h=h.concat(a)}return{estimatedPoints:a,opset:{type:\"path\",ops:h}}}function A(t,e,s,n,o,a,h,r,i){const c=t,l=e;let u=Math.abs(s/2),p=Math.abs(n/2);u+=G(.01*u,i),p+=G(.01*p,i);let f=o,d=a;for(;f<0;)f+=2*Math.PI,d+=2*Math.PI;d-f>2*Math.PI&&(f=0,d=2*Math.PI);const g=2*Math.PI/i.curveStepCount,M=Math.min(g/2,(d-f)/2),k=V(M,c,l,u,p,f,d,1,i);if(!i.disableMultiStroke){const t=V(M,c,l,u,p,f,d,1.5,i);k.push(...t)}return h&&(r?k.push(...$(c,l,c+u*Math.cos(f),l+p*Math.sin(f),i),...$(c,l,c+u*Math.cos(d),l+p*Math.sin(d),i)):k.push({op:\"lineTo\",data:[c,l]},{op:\"lineTo\",data:[c+u*Math.cos(f),l+p*Math.sin(f)]})),{type:\"path\",ops:k}}function _(t,e){const s=m(y(b(t))),n=[];let o=[0,0],a=[0,0];for(const{key:t,data:h}of s)switch(t){case\"M\":a=[h[0],h[1]],o=[h[0],h[1]];break;case\"L\":n.push(...$(a[0],a[1],h[0],h[1],e)),a=[h[0],h[1]];break;case\"C\":{const[t,s,o,r,i,c]=h;n.push(...Z(t,s,o,r,i,c,a,e)),a=[i,c];break}case\"Z\":n.push(...$(a[0],a[1],o[0],o[1],e)),a=[o[0],o[1]]}return{type:\"path\",ops:n}}function I(t,e){const s=[];for(const n of t)if(n.length){const t=e.maxRandomnessOffset||0,o=n.length;if(o>2){s.push({op:\"move\",data:[n[0][0]+G(t,e),n[0][1]+G(t,e)]});for(let a=1;a<o;a++)s.push({op:\"lineTo\",data:[n[a][0]+G(t,e),n[a][1]+G(t,e)]})}}return{type:\"fillPath\",ops:s}}function C(t,e){return function(t,e){let s=t.fillStyle||\"hachure\";if(!u[s])switch(s){case\"zigzag\":u[s]||(u[s]=new h(e));break;case\"cross-hatch\":u[s]||(u[s]=new r(e));break;case\"dots\":u[s]||(u[s]=new i(e));break;case\"dashed\":u[s]||(u[s]=new c(e));break;case\"zigzag-line\":u[s]||(u[s]=new l(e));break;default:s=\"hachure\",u[s]||(u[s]=new o(e))}return u[s]}(e,P).fillPolygons(t,e)}function z(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function W(t){return t.randomizer||(t.randomizer=new p(t.seed||0)),t.randomizer.next()}function E(t,e,s,n=1){return s.roughness*n*(W(s)*(e-t)+t)}function G(t,e,s=1){return E(-t,t,e,s)}function $(t,e,s,n,o,a=!1){const h=a?o.disableMultiStrokeFill:o.disableMultiStroke,r=R(t,e,s,n,o,!0,!1);if(h)return r;const i=R(t,e,s,n,o,!0,!0);return r.concat(i)}function R(t,e,s,n,o,a,h){const r=Math.pow(t-s,2)+Math.pow(e-n,2),i=Math.sqrt(r);let c=1;c=i<200?1:i>500?.4:-.0016668*i+1.233334;let l=o.maxRandomnessOffset||0;l*l*100>r&&(l=i/10);const u=l/2,p=.2+.2*W(o);let f=o.bowing*o.maxRandomnessOffset*(n-e)/200,d=o.bowing*o.maxRandomnessOffset*(t-s)/200;f=G(f,o,c),d=G(d,o,c);const g=[],M=()=>G(u,o,c),k=()=>G(l,o,c),b=o.preserveVertices;return a&&(h?g.push({op:\"move\",data:[t+(b?0:M()),e+(b?0:M())]}):g.push({op:\"move\",data:[t+(b?0:G(l,o,c)),e+(b?0:G(l,o,c))]})),h?g.push({op:\"bcurveTo\",data:[f+t+(s-t)*p+M(),d+e+(n-e)*p+M(),f+t+2*(s-t)*p+M(),d+e+2*(n-e)*p+M(),s+(b?0:M()),n+(b?0:M())]}):g.push({op:\"bcurveTo\",data:[f+t+(s-t)*p+k(),d+e+(n-e)*p+k(),f+t+2*(s-t)*p+k(),d+e+2*(n-e)*p+k(),s+(b?0:k()),n+(b?0:k())]}),g}function j(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+G(e,s),t[0][1]+G(e,s)]),n.push([t[0][0]+G(e,s),t[0][1]+G(e,s)]);for(let o=1;o<t.length;o++)n.push([t[o][0]+G(e,s),t[o][1]+G(e,s)]),o===t.length-1&&n.push([t[o][0]+G(e,s),t[o][1]+G(e,s)]);return q(n,null,s)}function q(t,e,s){const n=t.length,o=[];if(n>3){const a=[],h=1-s.curveTightness;o.push({op:\"move\",data:[t[1][0],t[1][1]]});for(let e=1;e+2<n;e++){const s=t[e];a[0]=[s[0],s[1]],a[1]=[s[0]+(h*t[e+1][0]-h*t[e-1][0])/6,s[1]+(h*t[e+1][1]-h*t[e-1][1])/6],a[2]=[t[e+1][0]+(h*t[e][0]-h*t[e+2][0])/6,t[e+1][1]+(h*t[e][1]-h*t[e+2][1])/6],a[3]=[t[e+1][0],t[e+1][1]],o.push({op:\"bcurveTo\",data:[a[1][0],a[1][1],a[2][0],a[2][1],a[3][0],a[3][1]]})}if(e&&2===e.length){const t=s.maxRandomnessOffset;o.push({op:\"lineTo\",data:[e[0]+G(t,s),e[1]+G(t,s)]})}}else 3===n?(o.push({op:\"move\",data:[t[1][0],t[1][1]]}),o.push({op:\"bcurveTo\",data:[t[1][0],t[1][1],t[2][0],t[2][1],t[2][0],t[2][1]]})):2===n&&o.push(...R(t[0][0],t[0][1],t[1][0],t[1][1],s,!0,!0));return o}function F(t,e,s,n,o,a,h,r){const i=[],c=[];if(0===r.roughness){t/=4,c.push([e+n*Math.cos(-t),s+o*Math.sin(-t)]);for(let a=0;a<=2*Math.PI;a+=t){const t=[e+n*Math.cos(a),s+o*Math.sin(a)];i.push(t),c.push(t)}c.push([e+n*Math.cos(0),s+o*Math.sin(0)]),c.push([e+n*Math.cos(t),s+o*Math.sin(t)])}else{const l=G(.5,r)-Math.PI/2;c.push([G(a,r)+e+.9*n*Math.cos(l-t),G(a,r)+s+.9*o*Math.sin(l-t)]);const u=2*Math.PI+l-.01;for(let h=l;h<u;h+=t){const t=[G(a,r)+e+n*Math.cos(h),G(a,r)+s+o*Math.sin(h)];i.push(t),c.push(t)}c.push([G(a,r)+e+n*Math.cos(l+2*Math.PI+.5*h),G(a,r)+s+o*Math.sin(l+2*Math.PI+.5*h)]),c.push([G(a,r)+e+.98*n*Math.cos(l+h),G(a,r)+s+.98*o*Math.sin(l+h)]),c.push([G(a,r)+e+.9*n*Math.cos(l+.5*h),G(a,r)+s+.9*o*Math.sin(l+.5*h)])}return[c,i]}function V(t,e,s,n,o,a,h,r,i){const c=a+G(.1,i),l=[];l.push([G(r,i)+e+.9*n*Math.cos(c-t),G(r,i)+s+.9*o*Math.sin(c-t)]);for(let a=c;a<=h;a+=t)l.push([G(r,i)+e+n*Math.cos(a),G(r,i)+s+o*Math.sin(a)]);return l.push([e+n*Math.cos(h),s+o*Math.sin(h)]),l.push([e+n*Math.cos(h),s+o*Math.sin(h)]),q(l,null,i)}function Z(t,e,s,n,o,a,h,r){const i=[],c=[r.maxRandomnessOffset||1,(r.maxRandomnessOffset||1)+.3];let l=[0,0];const u=r.disableMultiStroke?1:2,p=r.preserveVertices;for(let f=0;f<u;f++)0===f?i.push({op:\"move\",data:[h[0],h[1]]}):i.push({op:\"move\",data:[h[0]+(p?0:G(c[0],r)),h[1]+(p?0:G(c[0],r))]}),l=p?[o,a]:[o+G(c[f],r),a+G(c[f],r)],i.push({op:\"bcurveTo\",data:[t+G(c[f],r),e+G(c[f],r),s+G(c[f],r),n+G(c[f],r),l[0],l[1]]});return i}function Q(t){return[...t]}function H(t,e=0){const s=t.length;if(s<3)throw new Error(\"A curve must have at least three points.\");const n=[];if(3===s)n.push(Q(t[0]),Q(t[1]),Q(t[2]),Q(t[2]));else{const s=[];s.push(t[0],t[0]);for(let e=1;e<t.length;e++)s.push(t[e]),e===t.length-1&&s.push(t[e]);const o=[],a=1-e;n.push(Q(s[0]));for(let t=1;t+2<s.length;t++){const e=s[t];o[0]=[e[0],e[1]],o[1]=[e[0]+(a*s[t+1][0]-a*s[t-1][0])/6,e[1]+(a*s[t+1][1]-a*s[t-1][1])/6],o[2]=[s[t+1][0]+(a*s[t][0]-a*s[t+2][0])/6,s[t+1][1]+(a*s[t][1]-a*s[t+2][1])/6],o[3]=[s[t+1][0],s[t+1][1]],n.push(o[1],o[2],o[3])}}return n}function N(t,e){return Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2)}function B(t,e,s){const n=N(e,s);if(0===n)return N(t,e);let o=((t[0]-e[0])*(s[0]-e[0])+(t[1]-e[1])*(s[1]-e[1]))/n;return o=Math.max(0,Math.min(1,o)),N(t,J(e,s,o))}function J(t,e,s){return[t[0]+(e[0]-t[0])*s,t[1]+(e[1]-t[1])*s]}function K(t,e,s,n){const o=n||[];if(function(t,e){const s=t[e+0],n=t[e+1],o=t[e+2],a=t[e+3];let h=3*n[0]-2*s[0]-a[0];h*=h;let r=3*n[1]-2*s[1]-a[1];r*=r;let i=3*o[0]-2*a[0]-s[0];i*=i;let c=3*o[1]-2*a[1]-s[1];return c*=c,h<i&&(h=i),r<c&&(r=c),h+r}(t,e)<s){const s=t[e+0];if(o.length){(a=o[o.length-1],h=s,Math.sqrt(N(a,h)))>1&&o.push(s)}else o.push(s);o.push(t[e+3])}else{const n=.5,a=t[e+0],h=t[e+1],r=t[e+2],i=t[e+3],c=J(a,h,n),l=J(h,r,n),u=J(r,i,n),p=J(c,l,n),f=J(l,u,n),d=J(p,f,n);K([a,c,p,d],0,s,o),K([d,f,u,i],0,s,o)}var a,h;return o}function U(t,e){return X(t,0,t.length,e)}function X(t,e,s,n,o){const a=o||[],h=t[e],r=t[s-1];let i=0,c=1;for(let n=e+1;n<s-1;++n){const e=B(t[n],h,r);e>i&&(i=e,c=n)}return Math.sqrt(i)>n?(X(t,e,c+1,n,a),X(t,c,s,n,a)):(a.length||a.push(h),a.push(r)),a}function Y(t,e=.15,s){const n=[],o=(t.length-1)/3;for(let s=0;s<o;s++){K(t,3*s,e,n)}return s&&s>0?X(n,0,n.length,s):n}const tt=\"none\";class et{constructor(t){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:\"#000\",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:\"hachure\",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=t||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(t){return t?Object.assign({},this.defaultOptions,t):this.defaultOptions}_d(t,e,s){return{shape:t,sets:e||[],options:s||this.defaultOptions}}line(t,e,s,n,o){const a=this._o(o);return this._d(\"line\",[v(t,e,s,n,a)],a)}rectangle(t,e,s,n,o){const a=this._o(o),h=[],r=O(t,e,s,n,a);if(a.fill){const o=[[t,e],[t+s,e],[t+s,e+n],[t,e+n]];\"solid\"===a.fillStyle?h.push(I([o],a)):h.push(C([o],a))}return a.stroke!==tt&&h.push(r),this._d(\"rectangle\",h,a)}ellipse(t,e,s,n,o){const a=this._o(o),h=[],r=T(s,n,a),i=D(t,e,a,r);if(a.fill)if(\"solid\"===a.fillStyle){const s=D(t,e,a,r).opset;s.type=\"fillPath\",h.push(s)}else h.push(C([i.estimatedPoints],a));return a.stroke!==tt&&h.push(i.opset),this._d(\"ellipse\",h,a)}circle(t,e,s,n){const o=this.ellipse(t,e,s,s,n);return o.shape=\"circle\",o}linearPath(t,e){const s=this._o(e);return this._d(\"linearPath\",[S(t,!1,s)],s)}arc(t,e,s,n,o,a,h=!1,r){const i=this._o(r),c=[],l=A(t,e,s,n,o,a,h,!0,i);if(h&&i.fill)if(\"solid\"===i.fillStyle){const h=Object.assign({},i);h.disableMultiStroke=!0;const r=A(t,e,s,n,o,a,!0,!1,h);r.type=\"fillPath\",c.push(r)}else c.push(function(t,e,s,n,o,a,h){const r=t,i=e;let c=Math.abs(s/2),l=Math.abs(n/2);c+=G(.01*c,h),l+=G(.01*l,h);let u=o,p=a;for(;u<0;)u+=2*Math.PI,p+=2*Math.PI;p-u>2*Math.PI&&(u=0,p=2*Math.PI);const f=(p-u)/h.curveStepCount,d=[];for(let t=u;t<=p;t+=f)d.push([r+c*Math.cos(t),i+l*Math.sin(t)]);return d.push([r+c*Math.cos(p),i+l*Math.sin(p)]),d.push([r,i]),C([d],h)}(t,e,s,n,o,a,i));return i.stroke!==tt&&c.push(l),this._d(\"arc\",c,i)}curve(t,e){const s=this._o(e),n=[],o=L(t,s);if(s.fill&&s.fill!==tt)if(\"solid\"===s.fillStyle){const e=L(t,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));n.push({type:\"fillPath\",ops:this._mergedShape(e.ops)})}else{const e=[],o=t;if(o.length){const t=\"number\"==typeof o[0][0]?[o]:o;for(const n of t)n.length<3?e.push(...n):3===n.length?e.push(...Y(H([n[0],n[0],n[1],n[2]]),10,(1+s.roughness)/2)):e.push(...Y(H(n),10,(1+s.roughness)/2))}e.length&&n.push(C([e],s))}return s.stroke!==tt&&n.push(o),this._d(\"curve\",n,s)}polygon(t,e){const s=this._o(e),n=[],o=S(t,!0,s);return s.fill&&(\"solid\"===s.fillStyle?n.push(I([t],s)):n.push(C([t],s))),s.stroke!==tt&&n.push(o),this._d(\"polygon\",n,s)}path(t,e){const s=this._o(e),n=[];if(!t)return this._d(\"path\",n,s);t=(t||\"\").replace(/\\n/g,\" \").replace(/(-\\s)/g,\"-\").replace(\"/(ss)/g\",\" \");const o=s.fill&&\"transparent\"!==s.fill&&s.fill!==tt,a=s.stroke!==tt,h=!!(s.simplification&&s.simplification<1),r=function(t,e,s){const n=m(y(b(t))),o=[];let a=[],h=[0,0],r=[];const i=()=>{r.length>=4&&a.push(...Y(r,e)),r=[]},c=()=>{i(),a.length&&(o.push(a),a=[])};for(const{key:t,data:e}of n)switch(t){case\"M\":c(),h=[e[0],e[1]],a.push(h);break;case\"L\":i(),a.push([e[0],e[1]]);break;case\"C\":if(!r.length){const t=a.length?a[a.length-1]:h;r.push([t[0],t[1]])}r.push([e[0],e[1]]),r.push([e[2],e[3]]),r.push([e[4],e[5]]);break;case\"Z\":i(),a.push([h[0],h[1]])}if(c(),!s)return o;const l=[];for(const t of o){const e=U(t,s);e.length&&l.push(e)}return l}(t,1,h?4-4*(s.simplification||1):(1+s.roughness)/2),i=_(t,s);if(o)if(\"solid\"===s.fillStyle)if(1===r.length){const e=_(t,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));n.push({type:\"fillPath\",ops:this._mergedShape(e.ops)})}else n.push(I(r,s));else n.push(C(r,s));return a&&(h?r.forEach((t=>{n.push(S(t,!1,s))})):n.push(i)),this._d(\"path\",n,s)}opsToPath(t,e){let s=\"\";for(const n of t.ops){const t=\"number\"==typeof e&&e>=0?n.data.map((t=>+t.toFixed(e))):n.data;switch(n.op){case\"move\":s+=`M${t[0]} ${t[1]} `;break;case\"bcurveTo\":s+=`C${t[0]} ${t[1]}, ${t[2]} ${t[3]}, ${t[4]} ${t[5]} `;break;case\"lineTo\":s+=`L${t[0]} ${t[1]} `}}return s.trim()}toPaths(t){const e=t.sets||[],s=t.options||this.defaultOptions,n=[];for(const t of e){let e=null;switch(t.type){case\"path\":e={d:this.opsToPath(t),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:tt};break;case\"fillPath\":e={d:this.opsToPath(t),stroke:tt,strokeWidth:0,fill:s.fill||tt};break;case\"fillSketch\":e=this.fillSketch(t,s)}e&&n.push(e)}return n}fillSketch(t,e){let s=e.fillWeight;return s<0&&(s=e.strokeWidth/2),{d:this.opsToPath(t),stroke:e.fill||tt,strokeWidth:s,fill:tt}}_mergedShape(t){return t.filter(((t,e)=>0===e||\"move\"!==t.op))}}class st{constructor(t,e){this.canvas=t,this.ctx=this.canvas.getContext(\"2d\"),this.gen=new et(e)}draw(t){const e=t.sets||[],s=t.options||this.getDefaultOptions(),n=this.ctx,o=t.options.fixedDecimalPlaceDigits;for(const a of e)switch(a.type){case\"path\":n.save(),n.strokeStyle=\"none\"===s.stroke?\"transparent\":s.stroke,n.lineWidth=s.strokeWidth,s.strokeLineDash&&n.setLineDash(s.strokeLineDash),s.strokeLineDashOffset&&(n.lineDashOffset=s.strokeLineDashOffset),this._drawToContext(n,a,o),n.restore();break;case\"fillPath\":{n.save(),n.fillStyle=s.fill||\"\";const e=\"curve\"===t.shape||\"polygon\"===t.shape||\"path\"===t.shape?\"evenodd\":\"nonzero\";this._drawToContext(n,a,o,e),n.restore();break}case\"fillSketch\":this.fillSketch(n,a,s)}}fillSketch(t,e,s){let n=s.fillWeight;n<0&&(n=s.strokeWidth/2),t.save(),s.fillLineDash&&t.setLineDash(s.fillLineDash),s.fillLineDashOffset&&(t.lineDashOffset=s.fillLineDashOffset),t.strokeStyle=s.fill||\"\",t.lineWidth=n,this._drawToContext(t,e,s.fixedDecimalPlaceDigits),t.restore()}_drawToContext(t,e,s,n=\"nonzero\"){t.beginPath();for(const n of e.ops){const e=\"number\"==typeof s&&s>=0?n.data.map((t=>+t.toFixed(s))):n.data;switch(n.op){case\"move\":t.moveTo(e[0],e[1]);break;case\"bcurveTo\":t.bezierCurveTo(e[0],e[1],e[2],e[3],e[4],e[5]);break;case\"lineTo\":t.lineTo(e[0],e[1])}}\"fillPath\"===e.type?t.fill(n):t.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(t,e,s,n,o){const a=this.gen.line(t,e,s,n,o);return this.draw(a),a}rectangle(t,e,s,n,o){const a=this.gen.rectangle(t,e,s,n,o);return this.draw(a),a}ellipse(t,e,s,n,o){const a=this.gen.ellipse(t,e,s,n,o);return this.draw(a),a}circle(t,e,s,n){const o=this.gen.circle(t,e,s,n);return this.draw(o),o}linearPath(t,e){const s=this.gen.linearPath(t,e);return this.draw(s),s}polygon(t,e){const s=this.gen.polygon(t,e);return this.draw(s),s}arc(t,e,s,n,o,a,h=!1,r){const i=this.gen.arc(t,e,s,n,o,a,h,r);return this.draw(i),i}curve(t,e){const s=this.gen.curve(t,e);return this.draw(s),s}path(t,e){const s=this.gen.path(t,e);return this.draw(s),s}}const nt=\"http://www.w3.org/2000/svg\";class ot{constructor(t,e){this.svg=t,this.gen=new et(e)}draw(t){const e=t.sets||[],s=t.options||this.getDefaultOptions(),n=this.svg.ownerDocument||window.document,o=n.createElementNS(nt,\"g\"),a=t.options.fixedDecimalPlaceDigits;for(const h of e){let e=null;switch(h.type){case\"path\":e=n.createElementNS(nt,\"path\"),e.setAttribute(\"d\",this.opsToPath(h,a)),e.setAttribute(\"stroke\",s.stroke),e.setAttribute(\"stroke-width\",s.strokeWidth+\"\"),e.setAttribute(\"fill\",\"none\"),s.strokeLineDash&&e.setAttribute(\"stroke-dasharray\",s.strokeLineDash.join(\" \").trim()),s.strokeLineDashOffset&&e.setAttribute(\"stroke-dashoffset\",`${s.strokeLineDashOffset}`);break;case\"fillPath\":e=n.createElementNS(nt,\"path\"),e.setAttribute(\"d\",this.opsToPath(h,a)),e.setAttribute(\"stroke\",\"none\"),e.setAttribute(\"stroke-width\",\"0\"),e.setAttribute(\"fill\",s.fill||\"\"),\"curve\"!==t.shape&&\"polygon\"!==t.shape||e.setAttribute(\"fill-rule\",\"evenodd\");break;case\"fillSketch\":e=this.fillSketch(n,h,s)}e&&o.appendChild(e)}return o}fillSketch(t,e,s){let n=s.fillWeight;n<0&&(n=s.strokeWidth/2);const o=t.createElementNS(nt,\"path\");return o.setAttribute(\"d\",this.opsToPath(e,s.fixedDecimalPlaceDigits)),o.setAttribute(\"stroke\",s.fill||\"\"),o.setAttribute(\"stroke-width\",n+\"\"),o.setAttribute(\"fill\",\"none\"),s.fillLineDash&&o.setAttribute(\"stroke-dasharray\",s.fillLineDash.join(\" \").trim()),s.fillLineDashOffset&&o.setAttribute(\"stroke-dashoffset\",`${s.fillLineDashOffset}`),o}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,e){return this.gen.opsToPath(t,e)}line(t,e,s,n,o){const a=this.gen.line(t,e,s,n,o);return this.draw(a)}rectangle(t,e,s,n,o){const a=this.gen.rectangle(t,e,s,n,o);return this.draw(a)}ellipse(t,e,s,n,o){const a=this.gen.ellipse(t,e,s,n,o);return this.draw(a)}circle(t,e,s,n){const o=this.gen.circle(t,e,s,n);return this.draw(o)}linearPath(t,e){const s=this.gen.linearPath(t,e);return this.draw(s)}polygon(t,e){const s=this.gen.polygon(t,e);return this.draw(s)}arc(t,e,s,n,o,a,h=!1,r){const i=this.gen.arc(t,e,s,n,o,a,h,r);return this.draw(i)}curve(t,e){const s=this.gen.curve(t,e);return this.draw(s)}path(t,e){const s=this.gen.path(t,e);return this.draw(s)}}var at={canvas:(t,e)=>new st(t,e),svg:(t,e)=>new ot(t,e),generator:t=>new et(t),newSeed:()=>et.newSeed()};export{at as default};\n"],"names":["t","n","o","a","h","r","e","s","i","c","l","u","p","f","d","g","M","k","b","y","m","x","w","P","v","S","O","L","T","D","A","G","E","$","j","z","F","q","V","_","Z","I","C","W","R","Q","H","N","B","J","K","U","X","Y","tt","et","st","nt","ot","at"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index30.js","sources":["../src/utils/idGenerator.js"],"sourcesContent":["/**\n * ID Generator Utility\n *\n * Generates unique IDs for annotations.\n *\n * @module utils/idGenerator\n */\n\n/**\n * Generate a unique ID for an annotation\n *\n * @param {string} [prefix='anno'] - ID prefix (e.g., 'highlight', 'text', 'ink')\n * @returns {string} Unique annotation ID\n * @example\n * ```javascript\n * const id = generateId('highlight');\n * // Returns: \"highlight-1234567890abc\"\n * ```\n */\nexport function generateId(prefix = 'anno') {\n const timestamp = Date.now().toString(36);\n const random = Math.random().toString(36).substring(2, 9);\n return `${prefix}-${timestamp}${random}`;\n}\n"],"names":["generateId","prefix","timestamp","random"],"mappings":"AAmBO,SAASA,EAAWC,IAAS,QAAQ;AAC1C,QAAMC,IAAY,KAAK,IAAG,EAAG,SAAS,EAAE,GAClCC,IAAS,KAAK,SAAS,SAAS,EAAE,EAAE,UAAU,GAAG,CAAC;AACxD,SAAO,GAAGF,CAAM,IAAIC,CAAS,GAAGC,CAAM;AACxC;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});function X(a,e,s){if(a&&a.length){const[t,n]=e,o=Math.PI/180*s,r=Math.cos(o),h=Math.sin(o);for(const i of a){const[l,c]=i;i[0]=(l-t)*r-(c-n)*h+t,i[1]=(l-t)*h+(c-n)*r+n}}}function Ot(a,e){return a[0]===e[0]&&a[1]===e[1]}function Lt(a,e,s,t=1){const n=s,o=Math.max(e,.1),r=a[0]&&a[0][0]&&typeof a[0][0]=="number"?[a]:a,h=[0,0];if(n)for(const l of r)X(l,h,n);const i=(function(l,c,d){const p=[];for(const M of l){const m=[...M];Ot(m[0],m[m.length-1])||m.push([m[0][0],m[0][1]]),m.length>2&&p.push(m)}const u=[];c=Math.max(c,.1);const f=[];for(const M of p)for(let m=0;m<M.length-1;m++){const P=M[m],x=M[m+1];if(P[1]!==x[1]){const w=Math.min(P[1],x[1]);f.push({ymin:w,ymax:Math.max(P[1],x[1]),x:w===P[1]?P[0]:x[0],islope:(x[0]-P[0])/(x[1]-P[1])})}}if(f.sort(((M,m)=>M.ymin<m.ymin?-1:M.ymin>m.ymin?1:M.x<m.x?-1:M.x>m.x?1:M.ymax===m.ymax?0:(M.ymax-m.ymax)/Math.abs(M.ymax-m.ymax))),!f.length)return u;let g=[],k=f[0].ymin,b=0;for(;g.length||f.length;){if(f.length){let M=-1;for(let m=0;m<f.length&&!(f[m].ymin>k);m++)M=m;f.splice(0,M+1).forEach((m=>{g.push({s:k,edge:m})}))}if(g=g.filter((M=>!(M.edge.ymax<=k))),g.sort(((M,m)=>M.edge.x===m.edge.x?0:(M.edge.x-m.edge.x)/Math.abs(M.edge.x-m.edge.x))),(d!==1||b%c==0)&&g.length>1)for(let M=0;M<g.length;M+=2){const m=M+1;if(m>=g.length)break;const P=g[M].edge,x=g[m].edge;u.push([[Math.round(P.x),k],[Math.round(x.x),k]])}k+=d,g.forEach((M=>{M.edge.x=M.edge.x+d*M.edge.islope})),b++}return u})(r,o,t);if(n){for(const l of r)X(l,h,-n);(function(l,c,d){const p=[];l.forEach((u=>p.push(...u))),X(p,c,d)})(i,h,-n)}return i}function j(a,e){var s;const t=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.round(Math.max(n,.1));let o=1;return e.roughness>=1&&(((s=e.randomizer)===null||s===void 0?void 0:s.next())||Math.random())>.7&&(o=n),Lt(a,n,t,o||1)}class ht{constructor(e){this.helper=e}fillPolygons(e,s){return this._fillPolygons(e,s)}_fillPolygons(e,s){const t=j(e,s);return{type:"fillSketch",ops:this.renderLines(t,s)}}renderLines(e,s){const t=[];for(const n of e)t.push(...this.helper.doubleLineOps(n[0][0],n[0][1],n[1][0],n[1][1],s));return t}}function U(a){const e=a[0],s=a[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class Tt extends ht{fillPolygons(e,s){let t=s.hachureGap;t<0&&(t=4*s.strokeWidth),t=Math.max(t,.1);const n=j(e,Object.assign({},s,{hachureGap:t})),o=Math.PI/180*s.hachureAngle,r=[],h=.5*t*Math.cos(o),i=.5*t*Math.sin(o);for(const[l,c]of n)U([l,c])&&r.push([[l[0]-h,l[1]+i],[...c]],[[l[0]+h,l[1]-i],[...c]]);return{type:"fillSketch",ops:this.renderLines(r,s)}}}class Dt extends ht{fillPolygons(e,s){const t=this._fillPolygons(e,s),n=Object.assign({},s,{hachureAngle:s.hachureAngle+90}),o=this._fillPolygons(e,n);return t.ops=t.ops.concat(o.ops),t}}class _t{constructor(e){this.helper=e}fillPolygons(e,s){const t=j(e,s=Object.assign({},s,{hachureAngle:0}));return this.dotsOnLines(t,s)}dotsOnLines(e,s){const t=[];let n=s.hachureGap;n<0&&(n=4*s.strokeWidth),n=Math.max(n,.1);let o=s.fillWeight;o<0&&(o=s.strokeWidth/2);const r=n/4;for(const h of e){const i=U(h),l=i/n,c=Math.ceil(l)-1,d=i-c*n,p=(h[0][0]+h[1][0])/2-n/4,u=Math.min(h[0][1],h[1][1]);for(let f=0;f<c;f++){const g=u+d+f*n,k=p-r+2*Math.random()*r,b=g-r+2*Math.random()*r,M=this.helper.ellipse(k,b,o,o,s);t.push(...M.ops)}}return{type:"fillSketch",ops:t}}}class At{constructor(e){this.helper=e}fillPolygons(e,s){const t=j(e,s);return{type:"fillSketch",ops:this.dashedLine(t,s)}}dashedLine(e,s){const t=s.dashOffset<0?s.hachureGap<0?4*s.strokeWidth:s.hachureGap:s.dashOffset,n=s.dashGap<0?s.hachureGap<0?4*s.strokeWidth:s.hachureGap:s.dashGap,o=[];return e.forEach((r=>{const h=U(r),i=Math.floor(h/(t+n)),l=(h+n-i*(t+n))/2;let c=r[0],d=r[1];c[0]>d[0]&&(c=r[1],d=r[0]);const p=Math.atan((d[1]-c[1])/(d[0]-c[0]));for(let u=0;u<i;u++){const f=u*(t+n),g=f+t,k=[c[0]+f*Math.cos(p)+l*Math.cos(p),c[1]+f*Math.sin(p)+l*Math.sin(p)],b=[c[0]+g*Math.cos(p)+l*Math.cos(p),c[1]+g*Math.sin(p)+l*Math.sin(p)];o.push(...this.helper.doubleLineOps(k[0],k[1],b[0],b[1],s))}})),o}}class It{constructor(e){this.helper=e}fillPolygons(e,s){const t=s.hachureGap<0?4*s.strokeWidth:s.hachureGap,n=s.zigzagOffset<0?t:s.zigzagOffset,o=j(e,s=Object.assign({},s,{hachureGap:t+n}));return{type:"fillSketch",ops:this.zigzagLines(o,n,s)}}zigzagLines(e,s,t){const n=[];return e.forEach((o=>{const r=U(o),h=Math.round(r/(2*s));let i=o[0],l=o[1];i[0]>l[0]&&(i=o[1],l=o[0]);const c=Math.atan((l[1]-i[1])/(l[0]-i[0]));for(let d=0;d<h;d++){const p=2*d*s,u=2*(d+1)*s,f=Math.sqrt(2*Math.pow(s,2)),g=[i[0]+p*Math.cos(c),i[1]+p*Math.sin(c)],k=[i[0]+u*Math.cos(c),i[1]+u*Math.sin(c)],b=[g[0]+f*Math.cos(c+Math.PI/4),g[1]+f*Math.sin(c+Math.PI/4)];n.push(...this.helper.doubleLineOps(g[0],g[1],b[0],b[1],t),...this.helper.doubleLineOps(b[0],b[1],k[0],k[1],t))}})),n}}const S={};class Ct{constructor(e){this.seed=e}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}const zt=0,Y=1,lt=2,F={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};function tt(a,e){return a.type===e}function rt(a){const e=[],s=(function(r){const h=new Array;for(;r!=="";)if(r.match(/^([ \t\r\n,]+)/))r=r.substr(RegExp.$1.length);else if(r.match(/^([aAcChHlLmMqQsStTvVzZ])/))h[h.length]={type:zt,text:RegExp.$1},r=r.substr(RegExp.$1.length);else{if(!r.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];h[h.length]={type:Y,text:`${parseFloat(RegExp.$1)}`},r=r.substr(RegExp.$1.length)}return h[h.length]={type:lt,text:""},h})(a);let t="BOD",n=0,o=s[n];for(;!tt(o,lt);){let r=0;const h=[];if(t==="BOD"){if(o.text!=="M"&&o.text!=="m")return rt("M0,0"+a);n++,r=F[o.text],t=o.text}else tt(o,Y)?r=F[t]:(n++,r=F[o.text],t=o.text);if(!(n+r<s.length))throw new Error("Path data ended short");for(let i=n;i<n+r;i++){const l=s[i];if(!tt(l,Y))throw new Error("Param not a number: "+t+","+l.text);h[h.length]=+l.text}if(typeof F[t]!="number")throw new Error("Bad segment: "+t);{const i={key:t,data:h};e.push(i),n+=r,o=s[n],t==="M"&&(t="L"),t==="m"&&(t="l")}}return e}function bt(a){let e=0,s=0,t=0,n=0;const o=[];for(const{key:r,data:h}of a)switch(r){case"M":o.push({key:"M",data:[...h]}),[e,s]=h,[t,n]=h;break;case"m":e+=h[0],s+=h[1],o.push({key:"M",data:[e,s]}),t=e,n=s;break;case"L":o.push({key:"L",data:[...h]}),[e,s]=h;break;case"l":e+=h[0],s+=h[1],o.push({key:"L",data:[e,s]});break;case"C":o.push({key:"C",data:[...h]}),e=h[4],s=h[5];break;case"c":{const i=h.map(((l,c)=>c%2?l+s:l+e));o.push({key:"C",data:i}),e=i[4],s=i[5];break}case"Q":o.push({key:"Q",data:[...h]}),e=h[2],s=h[3];break;case"q":{const i=h.map(((l,c)=>c%2?l+s:l+e));o.push({key:"Q",data:i}),e=i[2],s=i[3];break}case"A":o.push({key:"A",data:[...h]}),e=h[5],s=h[6];break;case"a":e+=h[5],s+=h[6],o.push({key:"A",data:[h[0],h[1],h[2],h[3],h[4],e,s]});break;case"H":o.push({key:"H",data:[...h]}),e=h[0];break;case"h":e+=h[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...h]}),s=h[0];break;case"v":s+=h[0],o.push({key:"V",data:[s]});break;case"S":o.push({key:"S",data:[...h]}),e=h[2],s=h[3];break;case"s":{const i=h.map(((l,c)=>c%2?l+s:l+e));o.push({key:"S",data:i}),e=i[2],s=i[3];break}case"T":o.push({key:"T",data:[...h]}),e=h[0],s=h[1];break;case"t":e+=h[0],s+=h[1],o.push({key:"T",data:[e,s]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=t,s=n}return o}function yt(a){const e=[];let s="",t=0,n=0,o=0,r=0,h=0,i=0;for(const{key:l,data:c}of a){switch(l){case"M":e.push({key:"M",data:[...c]}),[t,n]=c,[o,r]=c;break;case"C":e.push({key:"C",data:[...c]}),t=c[4],n=c[5],h=c[2],i=c[3];break;case"L":e.push({key:"L",data:[...c]}),[t,n]=c;break;case"H":t=c[0],e.push({key:"L",data:[t,n]});break;case"V":n=c[0],e.push({key:"L",data:[t,n]});break;case"S":{let d=0,p=0;s==="C"||s==="S"?(d=t+(t-h),p=n+(n-i)):(d=t,p=n),e.push({key:"C",data:[d,p,...c]}),h=c[0],i=c[1],t=c[2],n=c[3];break}case"T":{const[d,p]=c;let u=0,f=0;s==="Q"||s==="T"?(u=t+(t-h),f=n+(n-i)):(u=t,f=n);const g=t+2*(u-t)/3,k=n+2*(f-n)/3,b=d+2*(u-d)/3,M=p+2*(f-p)/3;e.push({key:"C",data:[g,k,b,M,d,p]}),h=u,i=f,t=d,n=p;break}case"Q":{const[d,p,u,f]=c,g=t+2*(d-t)/3,k=n+2*(p-n)/3,b=u+2*(d-u)/3,M=f+2*(p-f)/3;e.push({key:"C",data:[g,k,b,M,u,f]}),h=d,i=p,t=u,n=f;break}case"A":{const d=Math.abs(c[0]),p=Math.abs(c[1]),u=c[2],f=c[3],g=c[4],k=c[5],b=c[6];d===0||p===0?(e.push({key:"C",data:[t,n,k,b,k,b]}),t=k,n=b):(t!==k||n!==b)&&(mt(t,n,k,b,d,p,u,f,g).forEach((function(M){e.push({key:"C",data:M})})),t=k,n=b);break}case"Z":e.push({key:"Z",data:[]}),t=o,n=r}s=l}return e}function $(a,e,s){return[a*Math.cos(s)-e*Math.sin(s),a*Math.sin(s)+e*Math.cos(s)]}function mt(a,e,s,t,n,o,r,h,i,l){const c=(d=r,Math.PI*d/180);var d;let p=[],u=0,f=0,g=0,k=0;if(l)[u,f,g,k]=l;else{[a,e]=$(a,e,-c),[s,t]=$(s,t,-c);const T=(a-s)/2,v=(e-t)/2;let A=T*T/(n*n)+v*v/(o*o);A>1&&(A=Math.sqrt(A),n*=A,o*=A);const W=n*n,E=o*o,vt=W*E-W*v*v-E*T*T,St=W*v*v+E*T*T,ct=(h===i?-1:1)*Math.sqrt(Math.abs(vt/St));g=ct*n*v/o+(a+s)/2,k=ct*-o*T/n+(e+t)/2,u=Math.asin(parseFloat(((e-k)/o).toFixed(9))),f=Math.asin(parseFloat(((t-k)/o).toFixed(9))),a<g&&(u=Math.PI-u),s<g&&(f=Math.PI-f),u<0&&(u=2*Math.PI+u),f<0&&(f=2*Math.PI+f),i&&u>f&&(u-=2*Math.PI),!i&&f>u&&(f-=2*Math.PI)}let b=f-u;if(Math.abs(b)>120*Math.PI/180){const T=f,v=s,A=t;f=i&&f>u?u+120*Math.PI/180*1:u+120*Math.PI/180*-1,p=mt(s=g+n*Math.cos(f),t=k+o*Math.sin(f),v,A,n,o,r,0,i,[f,T,g,k])}b=f-u;const M=Math.cos(u),m=Math.sin(u),P=Math.cos(f),x=Math.sin(f),w=Math.tan(b/4),L=4/3*n*w,_=4/3*o*w,q=[a,e],D=[a+L*m,e-_*M],C=[s+L*x,t-_*P],it=[s,t];if(D[0]=2*q[0]-D[0],D[1]=2*q[1]-D[1],l)return[D,C,it].concat(p);{p=[D,C,it].concat(p);const T=[];for(let v=0;v<p.length;v+=3){const A=$(p[v][0],p[v][1],c),W=$(p[v+1][0],p[v+1][1],c),E=$(p[v+2][0],p[v+2][1],c);T.push([A[0],A[1],W[0],W[1],E[0],E[1]])}return T}}const Wt={randOffset:function(a,e){return y(a,e)},randOffsetWithRange:function(a,e,s){return N(a,e,s)},ellipse:function(a,e,s,t,n){const o=xt(s,t,n);return nt(a,e,n,o).opset},doubleLineOps:function(a,e,s,t,n){return I(a,e,s,t,n,!0)}};function wt(a,e,s,t,n){return{type:"path",ops:I(a,e,s,t,n)}}function Q(a,e,s){const t=(a||[]).length;if(t>2){const n=[];for(let o=0;o<t-1;o++)n.push(...I(a[o][0],a[o][1],a[o+1][0],a[o+1][1],s));return e&&n.push(...I(a[t-1][0],a[t-1][1],a[0][0],a[0][1],s)),{type:"path",ops:n}}return t===2?wt(a[0][0],a[0][1],a[1][0],a[1][1],s):{type:"path",ops:[]}}function Et(a,e,s,t,n){return(function(o,r){return Q(o,!0,r)})([[a,e],[a+s,e],[a+s,e+t],[a,e+t]],n)}function ut(a,e){if(a.length){const s=typeof a[0][0]=="number"?[a]:a,t=V(s[0],1*(1+.2*e.roughness),e),n=e.disableMultiStroke?[]:V(s[0],1.5*(1+.22*e.roughness),dt(e));for(let o=1;o<s.length;o++){const r=s[o];if(r.length){const h=V(r,1*(1+.2*e.roughness),e),i=e.disableMultiStroke?[]:V(r,1.5*(1+.22*e.roughness),dt(e));for(const l of h)l.op!=="move"&&t.push(l);for(const l of i)l.op!=="move"&&n.push(l)}}return{type:"path",ops:t.concat(n)}}return{type:"path",ops:[]}}function xt(a,e,s){const t=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(a/2,2)+Math.pow(e/2,2))/2)),n=Math.ceil(Math.max(s.curveStepCount,s.curveStepCount/Math.sqrt(200)*t)),o=2*Math.PI/n;let r=Math.abs(a/2),h=Math.abs(e/2);const i=1-s.curveFitting;return r+=y(r*i,s),h+=y(h*i,s),{increment:o,rx:r,ry:h}}function nt(a,e,s,t){const[n,o]=gt(t.increment,a,e,t.rx,t.ry,1,t.increment*N(.1,N(.4,1,s),s),s);let r=B(n,null,s);if(!s.disableMultiStroke&&s.roughness!==0){const[h]=gt(t.increment,a,e,t.rx,t.ry,1.5,0,s),i=B(h,null,s);r=r.concat(i)}return{estimatedPoints:o,opset:{type:"path",ops:r}}}function pt(a,e,s,t,n,o,r,h,i){const l=a,c=e;let d=Math.abs(s/2),p=Math.abs(t/2);d+=y(.01*d,i),p+=y(.01*p,i);let u=n,f=o;for(;u<0;)u+=2*Math.PI,f+=2*Math.PI;f-u>2*Math.PI&&(u=0,f=2*Math.PI);const g=2*Math.PI/i.curveStepCount,k=Math.min(g/2,(f-u)/2),b=Mt(k,l,c,d,p,u,f,1,i);if(!i.disableMultiStroke){const M=Mt(k,l,c,d,p,u,f,1.5,i);b.push(...M)}return r&&(h?b.push(...I(l,c,l+d*Math.cos(u),c+p*Math.sin(u),i),...I(l,c,l+d*Math.cos(f),c+p*Math.sin(f),i)):b.push({op:"lineTo",data:[l,c]},{op:"lineTo",data:[l+d*Math.cos(u),c+p*Math.sin(u)]})),{type:"path",ops:b}}function ft(a,e){const s=yt(bt(rt(a))),t=[];let n=[0,0],o=[0,0];for(const{key:r,data:h}of s)switch(r){case"M":o=[h[0],h[1]],n=[h[0],h[1]];break;case"L":t.push(...I(o[0],o[1],h[0],h[1],e)),o=[h[0],h[1]];break;case"C":{const[i,l,c,d,p,u]=h;t.push(...Gt(i,l,c,d,p,u,o,e)),o=[p,u];break}case"Z":t.push(...I(o[0],o[1],n[0],n[1],e)),o=[n[0],n[1]]}return{type:"path",ops:t}}function et(a,e){const s=[];for(const t of a)if(t.length){const n=e.maxRandomnessOffset||0,o=t.length;if(o>2){s.push({op:"move",data:[t[0][0]+y(n,e),t[0][1]+y(n,e)]});for(let r=1;r<o;r++)s.push({op:"lineTo",data:[t[r][0]+y(n,e),t[r][1]+y(n,e)]})}}return{type:"fillPath",ops:s}}function G(a,e){return(function(s,t){let n=s.fillStyle||"hachure";if(!S[n])switch(n){case"zigzag":S[n]||(S[n]=new Tt(t));break;case"cross-hatch":S[n]||(S[n]=new Dt(t));break;case"dots":S[n]||(S[n]=new _t(t));break;case"dashed":S[n]||(S[n]=new At(t));break;case"zigzag-line":S[n]||(S[n]=new It(t));break;default:n="hachure",S[n]||(S[n]=new ht(t))}return S[n]})(e,Wt).fillPolygons(a,e)}function dt(a){const e=Object.assign({},a);return e.randomizer=void 0,a.seed&&(e.seed=a.seed+1),e}function Pt(a){return a.randomizer||(a.randomizer=new Ct(a.seed||0)),a.randomizer.next()}function N(a,e,s,t=1){return s.roughness*t*(Pt(s)*(e-a)+a)}function y(a,e,s=1){return N(-a,a,e,s)}function I(a,e,s,t,n,o=!1){const r=o?n.disableMultiStrokeFill:n.disableMultiStroke,h=at(a,e,s,t,n,!0,!1);if(r)return h;const i=at(a,e,s,t,n,!0,!0);return h.concat(i)}function at(a,e,s,t,n,o,r){const h=Math.pow(a-s,2)+Math.pow(e-t,2),i=Math.sqrt(h);let l=1;l=i<200?1:i>500?.4:-.0016668*i+1.233334;let c=n.maxRandomnessOffset||0;c*c*100>h&&(c=i/10);const d=c/2,p=.2+.2*Pt(n);let u=n.bowing*n.maxRandomnessOffset*(t-e)/200,f=n.bowing*n.maxRandomnessOffset*(a-s)/200;u=y(u,n,l),f=y(f,n,l);const g=[],k=()=>y(d,n,l),b=()=>y(c,n,l),M=n.preserveVertices;return r?g.push({op:"move",data:[a+(M?0:k()),e+(M?0:k())]}):g.push({op:"move",data:[a+(M?0:y(c,n,l)),e+(M?0:y(c,n,l))]}),r?g.push({op:"bcurveTo",data:[u+a+(s-a)*p+k(),f+e+(t-e)*p+k(),u+a+2*(s-a)*p+k(),f+e+2*(t-e)*p+k(),s+(M?0:k()),t+(M?0:k())]}):g.push({op:"bcurveTo",data:[u+a+(s-a)*p+b(),f+e+(t-e)*p+b(),u+a+2*(s-a)*p+b(),f+e+2*(t-e)*p+b(),s+(M?0:b()),t+(M?0:b())]}),g}function V(a,e,s){if(!a.length)return[];const t=[];t.push([a[0][0]+y(e,s),a[0][1]+y(e,s)]),t.push([a[0][0]+y(e,s),a[0][1]+y(e,s)]);for(let n=1;n<a.length;n++)t.push([a[n][0]+y(e,s),a[n][1]+y(e,s)]),n===a.length-1&&t.push([a[n][0]+y(e,s),a[n][1]+y(e,s)]);return B(t,null,s)}function B(a,e,s){const t=a.length,n=[];if(t>3){const o=[],r=1-s.curveTightness;n.push({op:"move",data:[a[1][0],a[1][1]]});for(let h=1;h+2<t;h++){const i=a[h];o[0]=[i[0],i[1]],o[1]=[i[0]+(r*a[h+1][0]-r*a[h-1][0])/6,i[1]+(r*a[h+1][1]-r*a[h-1][1])/6],o[2]=[a[h+1][0]+(r*a[h][0]-r*a[h+2][0])/6,a[h+1][1]+(r*a[h][1]-r*a[h+2][1])/6],o[3]=[a[h+1][0],a[h+1][1]],n.push({op:"bcurveTo",data:[o[1][0],o[1][1],o[2][0],o[2][1],o[3][0],o[3][1]]})}}else t===3?(n.push({op:"move",data:[a[1][0],a[1][1]]}),n.push({op:"bcurveTo",data:[a[1][0],a[1][1],a[2][0],a[2][1],a[2][0],a[2][1]]})):t===2&&n.push(...at(a[0][0],a[0][1],a[1][0],a[1][1],s,!0,!0));return n}function gt(a,e,s,t,n,o,r,h){const i=[],l=[];if(h.roughness===0){a/=4,l.push([e+t*Math.cos(-a),s+n*Math.sin(-a)]);for(let c=0;c<=2*Math.PI;c+=a){const d=[e+t*Math.cos(c),s+n*Math.sin(c)];i.push(d),l.push(d)}l.push([e+t*Math.cos(0),s+n*Math.sin(0)]),l.push([e+t*Math.cos(a),s+n*Math.sin(a)])}else{const c=y(.5,h)-Math.PI/2;l.push([y(o,h)+e+.9*t*Math.cos(c-a),y(o,h)+s+.9*n*Math.sin(c-a)]);const d=2*Math.PI+c-.01;for(let p=c;p<d;p+=a){const u=[y(o,h)+e+t*Math.cos(p),y(o,h)+s+n*Math.sin(p)];i.push(u),l.push(u)}l.push([y(o,h)+e+t*Math.cos(c+2*Math.PI+.5*r),y(o,h)+s+n*Math.sin(c+2*Math.PI+.5*r)]),l.push([y(o,h)+e+.98*t*Math.cos(c+r),y(o,h)+s+.98*n*Math.sin(c+r)]),l.push([y(o,h)+e+.9*t*Math.cos(c+.5*r),y(o,h)+s+.9*n*Math.sin(c+.5*r)])}return[l,i]}function Mt(a,e,s,t,n,o,r,h,i){const l=o+y(.1,i),c=[];c.push([y(h,i)+e+.9*t*Math.cos(l-a),y(h,i)+s+.9*n*Math.sin(l-a)]);for(let d=l;d<=r;d+=a)c.push([y(h,i)+e+t*Math.cos(d),y(h,i)+s+n*Math.sin(d)]);return c.push([e+t*Math.cos(r),s+n*Math.sin(r)]),c.push([e+t*Math.cos(r),s+n*Math.sin(r)]),B(c,null,i)}function Gt(a,e,s,t,n,o,r,h){const i=[],l=[h.maxRandomnessOffset||1,(h.maxRandomnessOffset||1)+.3];let c=[0,0];const d=h.disableMultiStroke?1:2,p=h.preserveVertices;for(let u=0;u<d;u++)u===0?i.push({op:"move",data:[r[0],r[1]]}):i.push({op:"move",data:[r[0]+(p?0:y(l[0],h)),r[1]+(p?0:y(l[0],h))]}),c=p?[n,o]:[n+y(l[u],h),o+y(l[u],h)],i.push({op:"bcurveTo",data:[a+y(l[u],h),e+y(l[u],h),s+y(l[u],h),t+y(l[u],h),c[0],c[1]]});return i}function R(a){return[...a]}function kt(a,e=0){const s=a.length;if(s<3)throw new Error("A curve must have at least three points.");const t=[];if(s===3)t.push(R(a[0]),R(a[1]),R(a[2]),R(a[2]));else{const n=[];n.push(a[0],a[0]);for(let h=1;h<a.length;h++)n.push(a[h]),h===a.length-1&&n.push(a[h]);const o=[],r=1-e;t.push(R(n[0]));for(let h=1;h+2<n.length;h++){const i=n[h];o[0]=[i[0],i[1]],o[1]=[i[0]+(r*n[h+1][0]-r*n[h-1][0])/6,i[1]+(r*n[h+1][1]-r*n[h-1][1])/6],o[2]=[n[h+1][0]+(r*n[h][0]-r*n[h+2][0])/6,n[h+1][1]+(r*n[h][1]-r*n[h+2][1])/6],o[3]=[n[h+1][0],n[h+1][1]],t.push(o[1],o[2],o[3])}}return t}function H(a,e){return Math.pow(a[0]-e[0],2)+Math.pow(a[1]-e[1],2)}function $t(a,e,s){const t=H(e,s);if(t===0)return H(a,e);let n=((a[0]-e[0])*(s[0]-e[0])+(a[1]-e[1])*(s[1]-e[1]))/t;return n=Math.max(0,Math.min(1,n)),H(a,z(e,s,n))}function z(a,e,s){return[a[0]+(e[0]-a[0])*s,a[1]+(e[1]-a[1])*s]}function ot(a,e,s,t){const n=t||[];if((function(h,i){const l=h[i+0],c=h[i+1],d=h[i+2],p=h[i+3];let u=3*c[0]-2*l[0]-p[0];u*=u;let f=3*c[1]-2*l[1]-p[1];f*=f;let g=3*d[0]-2*p[0]-l[0];g*=g;let k=3*d[1]-2*p[1]-l[1];return k*=k,u<g&&(u=g),f<k&&(f=k),u+f})(a,e)<s){const h=a[e+0];n.length?(o=n[n.length-1],r=h,Math.sqrt(H(o,r))>1&&n.push(h)):n.push(h),n.push(a[e+3])}else{const i=a[e+0],l=a[e+1],c=a[e+2],d=a[e+3],p=z(i,l,.5),u=z(l,c,.5),f=z(c,d,.5),g=z(p,u,.5),k=z(u,f,.5),b=z(g,k,.5);ot([i,p,g,b],0,s,n),ot([b,k,f,d],0,s,n)}var o,r;return n}function Rt(a,e){return J(a,0,a.length,e)}function J(a,e,s,t,n){const o=n||[],r=a[e],h=a[s-1];let i=0,l=1;for(let c=e+1;c<s-1;++c){const d=$t(a[c],r,h);d>i&&(i=d,l=c)}return Math.sqrt(i)>t?(J(a,e,l+1,t,o),J(a,l,s,t,o)):(o.length||o.push(r),o.push(h)),o}function st(a,e=.15,s){const t=[],n=(a.length-1)/3;for(let o=0;o<n;o++)ot(a,3*o,e,t);return s&&s>0?J(t,0,t.length,s):t}const O="none";class K{constructor(e){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=e||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(e){return e?Object.assign({},this.defaultOptions,e):this.defaultOptions}_d(e,s,t){return{shape:e,sets:s||[],options:t||this.defaultOptions}}line(e,s,t,n,o){const r=this._o(o);return this._d("line",[wt(e,s,t,n,r)],r)}rectangle(e,s,t,n,o){const r=this._o(o),h=[],i=Et(e,s,t,n,r);if(r.fill){const l=[[e,s],[e+t,s],[e+t,s+n],[e,s+n]];r.fillStyle==="solid"?h.push(et([l],r)):h.push(G([l],r))}return r.stroke!==O&&h.push(i),this._d("rectangle",h,r)}ellipse(e,s,t,n,o){const r=this._o(o),h=[],i=xt(t,n,r),l=nt(e,s,r,i);if(r.fill)if(r.fillStyle==="solid"){const c=nt(e,s,r,i).opset;c.type="fillPath",h.push(c)}else h.push(G([l.estimatedPoints],r));return r.stroke!==O&&h.push(l.opset),this._d("ellipse",h,r)}circle(e,s,t,n){const o=this.ellipse(e,s,t,t,n);return o.shape="circle",o}linearPath(e,s){const t=this._o(s);return this._d("linearPath",[Q(e,!1,t)],t)}arc(e,s,t,n,o,r,h=!1,i){const l=this._o(i),c=[],d=pt(e,s,t,n,o,r,h,!0,l);if(h&&l.fill)if(l.fillStyle==="solid"){const p=Object.assign({},l);p.disableMultiStroke=!0;const u=pt(e,s,t,n,o,r,!0,!1,p);u.type="fillPath",c.push(u)}else c.push((function(p,u,f,g,k,b,M){const m=p,P=u;let x=Math.abs(f/2),w=Math.abs(g/2);x+=y(.01*x,M),w+=y(.01*w,M);let L=k,_=b;for(;L<0;)L+=2*Math.PI,_+=2*Math.PI;_-L>2*Math.PI&&(L=0,_=2*Math.PI);const q=(_-L)/M.curveStepCount,D=[];for(let C=L;C<=_;C+=q)D.push([m+x*Math.cos(C),P+w*Math.sin(C)]);return D.push([m+x*Math.cos(_),P+w*Math.sin(_)]),D.push([m,P]),G([D],M)})(e,s,t,n,o,r,l));return l.stroke!==O&&c.push(d),this._d("arc",c,l)}curve(e,s){const t=this._o(s),n=[],o=ut(e,t);if(t.fill&&t.fill!==O)if(t.fillStyle==="solid"){const r=ut(e,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(r.ops)})}else{const r=[],h=e;if(h.length){const i=typeof h[0][0]=="number"?[h]:h;for(const l of i)l.length<3?r.push(...l):l.length===3?r.push(...st(kt([l[0],l[0],l[1],l[2]]),10,(1+t.roughness)/2)):r.push(...st(kt(l),10,(1+t.roughness)/2))}r.length&&n.push(G([r],t))}return t.stroke!==O&&n.push(o),this._d("curve",n,t)}polygon(e,s){const t=this._o(s),n=[],o=Q(e,!0,t);return t.fill&&(t.fillStyle==="solid"?n.push(et([e],t)):n.push(G([e],t))),t.stroke!==O&&n.push(o),this._d("polygon",n,t)}path(e,s){const t=this._o(s),n=[];if(!e)return this._d("path",n,t);e=(e||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const o=t.fill&&t.fill!=="transparent"&&t.fill!==O,r=t.stroke!==O,h=!!(t.simplification&&t.simplification<1),i=(function(c,d,p){const u=yt(bt(rt(c))),f=[];let g=[],k=[0,0],b=[];const M=()=>{b.length>=4&&g.push(...st(b,d)),b=[]},m=()=>{M(),g.length&&(f.push(g),g=[])};for(const{key:x,data:w}of u)switch(x){case"M":m(),k=[w[0],w[1]],g.push(k);break;case"L":M(),g.push([w[0],w[1]]);break;case"C":if(!b.length){const L=g.length?g[g.length-1]:k;b.push([L[0],L[1]])}b.push([w[0],w[1]]),b.push([w[2],w[3]]),b.push([w[4],w[5]]);break;case"Z":M(),g.push([k[0],k[1]])}if(m(),!p)return f;const P=[];for(const x of f){const w=Rt(x,p);w.length&&P.push(w)}return P})(e,1,h?4-4*(t.simplification||1):(1+t.roughness)/2),l=ft(e,t);if(o)if(t.fillStyle==="solid")if(i.length===1){const c=ft(e,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));n.push({type:"fillPath",ops:this._mergedShape(c.ops)})}else n.push(et(i,t));else n.push(G(i,t));return r&&(h?i.forEach((c=>{n.push(Q(c,!1,t))})):n.push(l)),this._d("path",n,t)}opsToPath(e,s){let t="";for(const n of e.ops){const o=typeof s=="number"&&s>=0?n.data.map((r=>+r.toFixed(s))):n.data;switch(n.op){case"move":t+=`M${o[0]} ${o[1]} `;break;case"bcurveTo":t+=`C${o[0]} ${o[1]}, ${o[2]} ${o[3]}, ${o[4]} ${o[5]} `;break;case"lineTo":t+=`L${o[0]} ${o[1]} `}}return t.trim()}toPaths(e){const s=e.sets||[],t=e.options||this.defaultOptions,n=[];for(const o of s){let r=null;switch(o.type){case"path":r={d:this.opsToPath(o),stroke:t.stroke,strokeWidth:t.strokeWidth,fill:O};break;case"fillPath":r={d:this.opsToPath(o),stroke:O,strokeWidth:0,fill:t.fill||O};break;case"fillSketch":r=this.fillSketch(o,t)}r&&n.push(r)}return n}fillSketch(e,s){let t=s.fillWeight;return t<0&&(t=s.strokeWidth/2),{d:this.opsToPath(e),stroke:s.fill||O,strokeWidth:t,fill:O}}_mergedShape(e){return e.filter(((s,t)=>t===0||s.op!=="move"))}}class jt{constructor(e,s){this.canvas=e,this.ctx=this.canvas.getContext("2d"),this.gen=new K(s)}draw(e){const s=e.sets||[],t=e.options||this.getDefaultOptions(),n=this.ctx,o=e.options.fixedDecimalPlaceDigits;for(const r of s)switch(r.type){case"path":n.save(),n.strokeStyle=t.stroke==="none"?"transparent":t.stroke,n.lineWidth=t.strokeWidth,t.strokeLineDash&&n.setLineDash(t.strokeLineDash),t.strokeLineDashOffset&&(n.lineDashOffset=t.strokeLineDashOffset),this._drawToContext(n,r,o),n.restore();break;case"fillPath":{n.save(),n.fillStyle=t.fill||"";const h=e.shape==="curve"||e.shape==="polygon"||e.shape==="path"?"evenodd":"nonzero";this._drawToContext(n,r,o,h),n.restore();break}case"fillSketch":this.fillSketch(n,r,t)}}fillSketch(e,s,t){let n=t.fillWeight;n<0&&(n=t.strokeWidth/2),e.save(),t.fillLineDash&&e.setLineDash(t.fillLineDash),t.fillLineDashOffset&&(e.lineDashOffset=t.fillLineDashOffset),e.strokeStyle=t.fill||"",e.lineWidth=n,this._drawToContext(e,s,t.fixedDecimalPlaceDigits),e.restore()}_drawToContext(e,s,t,n="nonzero"){e.beginPath();for(const o of s.ops){const r=typeof t=="number"&&t>=0?o.data.map((h=>+h.toFixed(t))):o.data;switch(o.op){case"move":e.moveTo(r[0],r[1]);break;case"bcurveTo":e.bezierCurveTo(r[0],r[1],r[2],r[3],r[4],r[5]);break;case"lineTo":e.lineTo(r[0],r[1])}}s.type==="fillPath"?e.fill(n):e.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(e,s,t,n,o){const r=this.gen.line(e,s,t,n,o);return this.draw(r),r}rectangle(e,s,t,n,o){const r=this.gen.rectangle(e,s,t,n,o);return this.draw(r),r}ellipse(e,s,t,n,o){const r=this.gen.ellipse(e,s,t,n,o);return this.draw(r),r}circle(e,s,t,n){const o=this.gen.circle(e,s,t,n);return this.draw(o),o}linearPath(e,s){const t=this.gen.linearPath(e,s);return this.draw(t),t}polygon(e,s){const t=this.gen.polygon(e,s);return this.draw(t),t}arc(e,s,t,n,o,r,h=!1,i){const l=this.gen.arc(e,s,t,n,o,r,h,i);return this.draw(l),l}curve(e,s){const t=this.gen.curve(e,s);return this.draw(t),t}path(e,s){const t=this.gen.path(e,s);return this.draw(t),t}}const Z="http://www.w3.org/2000/svg";class qt{constructor(e,s){this.svg=e,this.gen=new K(s)}draw(e){const s=e.sets||[],t=e.options||this.getDefaultOptions(),n=this.svg.ownerDocument||window.document,o=n.createElementNS(Z,"g"),r=e.options.fixedDecimalPlaceDigits;for(const h of s){let i=null;switch(h.type){case"path":i=n.createElementNS(Z,"path"),i.setAttribute("d",this.opsToPath(h,r)),i.setAttribute("stroke",t.stroke),i.setAttribute("stroke-width",t.strokeWidth+""),i.setAttribute("fill","none"),t.strokeLineDash&&i.setAttribute("stroke-dasharray",t.strokeLineDash.join(" ").trim()),t.strokeLineDashOffset&&i.setAttribute("stroke-dashoffset",`${t.strokeLineDashOffset}`);break;case"fillPath":i=n.createElementNS(Z,"path"),i.setAttribute("d",this.opsToPath(h,r)),i.setAttribute("stroke","none"),i.setAttribute("stroke-width","0"),i.setAttribute("fill",t.fill||""),e.shape!=="curve"&&e.shape!=="polygon"||i.setAttribute("fill-rule","evenodd");break;case"fillSketch":i=this.fillSketch(n,h,t)}i&&o.appendChild(i)}return o}fillSketch(e,s,t){let n=t.fillWeight;n<0&&(n=t.strokeWidth/2);const o=e.createElementNS(Z,"path");return o.setAttribute("d",this.opsToPath(s,t.fixedDecimalPlaceDigits)),o.setAttribute("stroke",t.fill||""),o.setAttribute("stroke-width",n+""),o.setAttribute("fill","none"),t.fillLineDash&&o.setAttribute("stroke-dasharray",t.fillLineDash.join(" ").trim()),t.fillLineDashOffset&&o.setAttribute("stroke-dashoffset",`${t.fillLineDashOffset}`),o}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(e,s){return this.gen.opsToPath(e,s)}line(e,s,t,n,o){const r=this.gen.line(e,s,t,n,o);return this.draw(r)}rectangle(e,s,t,n,o){const r=this.gen.rectangle(e,s,t,n,o);return this.draw(r)}ellipse(e,s,t,n,o){const r=this.gen.ellipse(e,s,t,n,o);return this.draw(r)}circle(e,s,t,n){const o=this.gen.circle(e,s,t,n);return this.draw(o)}linearPath(e,s){const t=this.gen.linearPath(e,s);return this.draw(t)}polygon(e,s){const t=this.gen.polygon(e,s);return this.draw(t)}arc(e,s,t,n,o,r,h=!1,i){const l=this.gen.arc(e,s,t,n,o,r,h,i);return this.draw(l)}curve(e,s){const t=this.gen.curve(e,s);return this.draw(t)}path(e,s){const t=this.gen.path(e,s);return this.draw(t)}}var Ft={canvas:(a,e)=>new jt(a,e),svg:(a,e)=>new qt(a,e),generator:a=>new K(a),newSeed:()=>K.newSeed()};exports.default=Ft;
2
+ //# sourceMappingURL=index31.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index31.cjs","sources":["../node_modules/roughjs/bundled/rough.esm.js"],"sourcesContent":["function t(t,e,s){if(t&&t.length){const[n,o]=e,a=Math.PI/180*s,h=Math.cos(a),r=Math.sin(a);for(const e of t){const[t,s]=e;e[0]=(t-n)*h-(s-o)*r+n,e[1]=(t-n)*r+(s-o)*h+o}}}function e(t,e){return t[0]===e[0]&&t[1]===e[1]}function s(s,n,o,a=1){const h=o,r=Math.max(n,.1),i=s[0]&&s[0][0]&&\"number\"==typeof s[0][0]?[s]:s,c=[0,0];if(h)for(const e of i)t(e,c,h);const l=function(t,s,n){const o=[];for(const s of t){const t=[...s];e(t[0],t[t.length-1])||t.push([t[0][0],t[0][1]]),t.length>2&&o.push(t)}const a=[];s=Math.max(s,.1);const h=[];for(const t of o)for(let e=0;e<t.length-1;e++){const s=t[e],n=t[e+1];if(s[1]!==n[1]){const t=Math.min(s[1],n[1]);h.push({ymin:t,ymax:Math.max(s[1],n[1]),x:t===s[1]?s[0]:n[0],islope:(n[0]-s[0])/(n[1]-s[1])})}}if(h.sort(((t,e)=>t.ymin<e.ymin?-1:t.ymin>e.ymin?1:t.x<e.x?-1:t.x>e.x?1:t.ymax===e.ymax?0:(t.ymax-e.ymax)/Math.abs(t.ymax-e.ymax))),!h.length)return a;let r=[],i=h[0].ymin,c=0;for(;r.length||h.length;){if(h.length){let t=-1;for(let e=0;e<h.length&&!(h[e].ymin>i);e++)t=e;h.splice(0,t+1).forEach((t=>{r.push({s:i,edge:t})}))}if(r=r.filter((t=>!(t.edge.ymax<=i))),r.sort(((t,e)=>t.edge.x===e.edge.x?0:(t.edge.x-e.edge.x)/Math.abs(t.edge.x-e.edge.x))),(1!==n||c%s==0)&&r.length>1)for(let t=0;t<r.length;t+=2){const e=t+1;if(e>=r.length)break;const s=r[t].edge,n=r[e].edge;a.push([[Math.round(s.x),i],[Math.round(n.x),i]])}i+=n,r.forEach((t=>{t.edge.x=t.edge.x+n*t.edge.islope})),c++}return a}(i,r,a);if(h){for(const e of i)t(e,c,-h);!function(e,s,n){const o=[];e.forEach((t=>o.push(...t))),t(o,s,n)}(l,c,-h)}return l}function n(t,e){var n;const o=e.hachureAngle+90;let a=e.hachureGap;a<0&&(a=4*e.strokeWidth),a=Math.round(Math.max(a,.1));let h=1;return e.roughness>=1&&((null===(n=e.randomizer)||void 0===n?void 0:n.next())||Math.random())>.7&&(h=a),s(t,a,o,h||1)}class o{constructor(t){this.helper=t}fillPolygons(t,e){return this._fillPolygons(t,e)}_fillPolygons(t,e){const s=n(t,e);return{type:\"fillSketch\",ops:this.renderLines(s,e)}}renderLines(t,e){const s=[];for(const n of t)s.push(...this.helper.doubleLineOps(n[0][0],n[0][1],n[1][0],n[1][1],e));return s}}function a(t){const e=t[0],s=t[1];return Math.sqrt(Math.pow(e[0]-s[0],2)+Math.pow(e[1]-s[1],2))}class h extends o{fillPolygons(t,e){let s=e.hachureGap;s<0&&(s=4*e.strokeWidth),s=Math.max(s,.1);const o=n(t,Object.assign({},e,{hachureGap:s})),h=Math.PI/180*e.hachureAngle,r=[],i=.5*s*Math.cos(h),c=.5*s*Math.sin(h);for(const[t,e]of o)a([t,e])&&r.push([[t[0]-i,t[1]+c],[...e]],[[t[0]+i,t[1]-c],[...e]]);return{type:\"fillSketch\",ops:this.renderLines(r,e)}}}class r extends o{fillPolygons(t,e){const s=this._fillPolygons(t,e),n=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),o=this._fillPolygons(t,n);return s.ops=s.ops.concat(o.ops),s}}class i{constructor(t){this.helper=t}fillPolygons(t,e){const s=n(t,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(s,e)}dotsOnLines(t,e){const s=[];let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.max(n,.1);let o=e.fillWeight;o<0&&(o=e.strokeWidth/2);const h=n/4;for(const r of t){const t=a(r),i=t/n,c=Math.ceil(i)-1,l=t-c*n,u=(r[0][0]+r[1][0])/2-n/4,p=Math.min(r[0][1],r[1][1]);for(let t=0;t<c;t++){const a=p+l+t*n,r=u-h+2*Math.random()*h,i=a-h+2*Math.random()*h,c=this.helper.ellipse(r,i,o,o,e);s.push(...c.ops)}}return{type:\"fillSketch\",ops:s}}}class c{constructor(t){this.helper=t}fillPolygons(t,e){const s=n(t,e);return{type:\"fillSketch\",ops:this.dashedLine(s,e)}}dashedLine(t,e){const s=e.dashOffset<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashOffset,n=e.dashGap<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashGap,o=[];return t.forEach((t=>{const h=a(t),r=Math.floor(h/(s+n)),i=(h+n-r*(s+n))/2;let c=t[0],l=t[1];c[0]>l[0]&&(c=t[1],l=t[0]);const u=Math.atan((l[1]-c[1])/(l[0]-c[0]));for(let t=0;t<r;t++){const a=t*(s+n),h=a+s,r=[c[0]+a*Math.cos(u)+i*Math.cos(u),c[1]+a*Math.sin(u)+i*Math.sin(u)],l=[c[0]+h*Math.cos(u)+i*Math.cos(u),c[1]+h*Math.sin(u)+i*Math.sin(u)];o.push(...this.helper.doubleLineOps(r[0],r[1],l[0],l[1],e))}})),o}}class l{constructor(t){this.helper=t}fillPolygons(t,e){const s=e.hachureGap<0?4*e.strokeWidth:e.hachureGap,o=e.zigzagOffset<0?s:e.zigzagOffset,a=n(t,e=Object.assign({},e,{hachureGap:s+o}));return{type:\"fillSketch\",ops:this.zigzagLines(a,o,e)}}zigzagLines(t,e,s){const n=[];return t.forEach((t=>{const o=a(t),h=Math.round(o/(2*e));let r=t[0],i=t[1];r[0]>i[0]&&(r=t[1],i=t[0]);const c=Math.atan((i[1]-r[1])/(i[0]-r[0]));for(let t=0;t<h;t++){const o=2*t*e,a=2*(t+1)*e,h=Math.sqrt(2*Math.pow(e,2)),i=[r[0]+o*Math.cos(c),r[1]+o*Math.sin(c)],l=[r[0]+a*Math.cos(c),r[1]+a*Math.sin(c)],u=[i[0]+h*Math.cos(c+Math.PI/4),i[1]+h*Math.sin(c+Math.PI/4)];n.push(...this.helper.doubleLineOps(i[0],i[1],u[0],u[1],s),...this.helper.doubleLineOps(u[0],u[1],l[0],l[1],s))}})),n}}const u={};class p{constructor(t){this.seed=t}next(){return this.seed?(2**31-1&(this.seed=Math.imul(48271,this.seed)))/2**31:Math.random()}}const f=0,d=1,g=2,M={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};function k(t,e){return t.type===e}function b(t){const e=[],s=function(t){const e=new Array;for(;\"\"!==t;)if(t.match(/^([ \\t\\r\\n,]+)/))t=t.substr(RegExp.$1.length);else if(t.match(/^([aAcChHlLmMqQsStTvVzZ])/))e[e.length]={type:f,text:RegExp.$1},t=t.substr(RegExp.$1.length);else{if(!t.match(/^(([-+]?[0-9]+(\\.[0-9]*)?|[-+]?\\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];e[e.length]={type:d,text:`${parseFloat(RegExp.$1)}`},t=t.substr(RegExp.$1.length)}return e[e.length]={type:g,text:\"\"},e}(t);let n=\"BOD\",o=0,a=s[o];for(;!k(a,g);){let h=0;const r=[];if(\"BOD\"===n){if(\"M\"!==a.text&&\"m\"!==a.text)return b(\"M0,0\"+t);o++,h=M[a.text],n=a.text}else k(a,d)?h=M[n]:(o++,h=M[a.text],n=a.text);if(!(o+h<s.length))throw new Error(\"Path data ended short\");for(let t=o;t<o+h;t++){const e=s[t];if(!k(e,d))throw new Error(\"Param not a number: \"+n+\",\"+e.text);r[r.length]=+e.text}if(\"number\"!=typeof M[n])throw new Error(\"Bad segment: \"+n);{const t={key:n,data:r};e.push(t),o+=h,a=s[o],\"M\"===n&&(n=\"L\"),\"m\"===n&&(n=\"l\")}}return e}function y(t){let e=0,s=0,n=0,o=0;const a=[];for(const{key:h,data:r}of t)switch(h){case\"M\":a.push({key:\"M\",data:[...r]}),[e,s]=r,[n,o]=r;break;case\"m\":e+=r[0],s+=r[1],a.push({key:\"M\",data:[e,s]}),n=e,o=s;break;case\"L\":a.push({key:\"L\",data:[...r]}),[e,s]=r;break;case\"l\":e+=r[0],s+=r[1],a.push({key:\"L\",data:[e,s]});break;case\"C\":a.push({key:\"C\",data:[...r]}),e=r[4],s=r[5];break;case\"c\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"C\",data:t}),e=t[4],s=t[5];break}case\"Q\":a.push({key:\"Q\",data:[...r]}),e=r[2],s=r[3];break;case\"q\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"Q\",data:t}),e=t[2],s=t[3];break}case\"A\":a.push({key:\"A\",data:[...r]}),e=r[5],s=r[6];break;case\"a\":e+=r[5],s+=r[6],a.push({key:\"A\",data:[r[0],r[1],r[2],r[3],r[4],e,s]});break;case\"H\":a.push({key:\"H\",data:[...r]}),e=r[0];break;case\"h\":e+=r[0],a.push({key:\"H\",data:[e]});break;case\"V\":a.push({key:\"V\",data:[...r]}),s=r[0];break;case\"v\":s+=r[0],a.push({key:\"V\",data:[s]});break;case\"S\":a.push({key:\"S\",data:[...r]}),e=r[2],s=r[3];break;case\"s\":{const t=r.map(((t,n)=>n%2?t+s:t+e));a.push({key:\"S\",data:t}),e=t[2],s=t[3];break}case\"T\":a.push({key:\"T\",data:[...r]}),e=r[0],s=r[1];break;case\"t\":e+=r[0],s+=r[1],a.push({key:\"T\",data:[e,s]});break;case\"Z\":case\"z\":a.push({key:\"Z\",data:[]}),e=n,s=o}return a}function m(t){const e=[];let s=\"\",n=0,o=0,a=0,h=0,r=0,i=0;for(const{key:c,data:l}of t){switch(c){case\"M\":e.push({key:\"M\",data:[...l]}),[n,o]=l,[a,h]=l;break;case\"C\":e.push({key:\"C\",data:[...l]}),n=l[4],o=l[5],r=l[2],i=l[3];break;case\"L\":e.push({key:\"L\",data:[...l]}),[n,o]=l;break;case\"H\":n=l[0],e.push({key:\"L\",data:[n,o]});break;case\"V\":o=l[0],e.push({key:\"L\",data:[n,o]});break;case\"S\":{let t=0,a=0;\"C\"===s||\"S\"===s?(t=n+(n-r),a=o+(o-i)):(t=n,a=o),e.push({key:\"C\",data:[t,a,...l]}),r=l[0],i=l[1],n=l[2],o=l[3];break}case\"T\":{const[t,a]=l;let h=0,c=0;\"Q\"===s||\"T\"===s?(h=n+(n-r),c=o+(o-i)):(h=n,c=o);const u=n+2*(h-n)/3,p=o+2*(c-o)/3,f=t+2*(h-t)/3,d=a+2*(c-a)/3;e.push({key:\"C\",data:[u,p,f,d,t,a]}),r=h,i=c,n=t,o=a;break}case\"Q\":{const[t,s,a,h]=l,c=n+2*(t-n)/3,u=o+2*(s-o)/3,p=a+2*(t-a)/3,f=h+2*(s-h)/3;e.push({key:\"C\",data:[c,u,p,f,a,h]}),r=t,i=s,n=a,o=h;break}case\"A\":{const t=Math.abs(l[0]),s=Math.abs(l[1]),a=l[2],h=l[3],r=l[4],i=l[5],c=l[6];if(0===t||0===s)e.push({key:\"C\",data:[n,o,i,c,i,c]}),n=i,o=c;else if(n!==i||o!==c){x(n,o,i,c,t,s,a,h,r).forEach((function(t){e.push({key:\"C\",data:t})})),n=i,o=c}break}case\"Z\":e.push({key:\"Z\",data:[]}),n=a,o=h}s=c}return e}function w(t,e,s){return[t*Math.cos(s)-e*Math.sin(s),t*Math.sin(s)+e*Math.cos(s)]}function x(t,e,s,n,o,a,h,r,i,c){const l=(u=h,Math.PI*u/180);var u;let p=[],f=0,d=0,g=0,M=0;if(c)[f,d,g,M]=c;else{[t,e]=w(t,e,-l),[s,n]=w(s,n,-l);const h=(t-s)/2,c=(e-n)/2;let u=h*h/(o*o)+c*c/(a*a);u>1&&(u=Math.sqrt(u),o*=u,a*=u);const p=o*o,k=a*a,b=p*k-p*c*c-k*h*h,y=p*c*c+k*h*h,m=(r===i?-1:1)*Math.sqrt(Math.abs(b/y));g=m*o*c/a+(t+s)/2,M=m*-a*h/o+(e+n)/2,f=Math.asin(parseFloat(((e-M)/a).toFixed(9))),d=Math.asin(parseFloat(((n-M)/a).toFixed(9))),t<g&&(f=Math.PI-f),s<g&&(d=Math.PI-d),f<0&&(f=2*Math.PI+f),d<0&&(d=2*Math.PI+d),i&&f>d&&(f-=2*Math.PI),!i&&d>f&&(d-=2*Math.PI)}let k=d-f;if(Math.abs(k)>120*Math.PI/180){const t=d,e=s,r=n;d=i&&d>f?f+120*Math.PI/180*1:f+120*Math.PI/180*-1,p=x(s=g+o*Math.cos(d),n=M+a*Math.sin(d),e,r,o,a,h,0,i,[d,t,g,M])}k=d-f;const b=Math.cos(f),y=Math.sin(f),m=Math.cos(d),P=Math.sin(d),v=Math.tan(k/4),S=4/3*o*v,O=4/3*a*v,L=[t,e],T=[t+S*y,e-O*b],D=[s+S*P,n-O*m],A=[s,n];if(T[0]=2*L[0]-T[0],T[1]=2*L[1]-T[1],c)return[T,D,A].concat(p);{p=[T,D,A].concat(p);const t=[];for(let e=0;e<p.length;e+=3){const s=w(p[e][0],p[e][1],l),n=w(p[e+1][0],p[e+1][1],l),o=w(p[e+2][0],p[e+2][1],l);t.push([s[0],s[1],n[0],n[1],o[0],o[1]])}return t}}const P={randOffset:function(t,e){return G(t,e)},randOffsetWithRange:function(t,e,s){return E(t,e,s)},ellipse:function(t,e,s,n,o){const a=T(s,n,o);return D(t,e,o,a).opset},doubleLineOps:function(t,e,s,n,o){return $(t,e,s,n,o,!0)}};function v(t,e,s,n,o){return{type:\"path\",ops:$(t,e,s,n,o)}}function S(t,e,s){const n=(t||[]).length;if(n>2){const o=[];for(let e=0;e<n-1;e++)o.push(...$(t[e][0],t[e][1],t[e+1][0],t[e+1][1],s));return e&&o.push(...$(t[n-1][0],t[n-1][1],t[0][0],t[0][1],s)),{type:\"path\",ops:o}}return 2===n?v(t[0][0],t[0][1],t[1][0],t[1][1],s):{type:\"path\",ops:[]}}function O(t,e,s,n,o){return function(t,e){return S(t,!0,e)}([[t,e],[t+s,e],[t+s,e+n],[t,e+n]],o)}function L(t,e){if(t.length){const s=\"number\"==typeof t[0][0]?[t]:t,n=j(s[0],1*(1+.2*e.roughness),e),o=e.disableMultiStroke?[]:j(s[0],1.5*(1+.22*e.roughness),z(e));for(let t=1;t<s.length;t++){const a=s[t];if(a.length){const t=j(a,1*(1+.2*e.roughness),e),s=e.disableMultiStroke?[]:j(a,1.5*(1+.22*e.roughness),z(e));for(const e of t)\"move\"!==e.op&&n.push(e);for(const t of s)\"move\"!==t.op&&o.push(t)}}return{type:\"path\",ops:n.concat(o)}}return{type:\"path\",ops:[]}}function T(t,e,s){const n=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(t/2,2)+Math.pow(e/2,2))/2)),o=Math.ceil(Math.max(s.curveStepCount,s.curveStepCount/Math.sqrt(200)*n)),a=2*Math.PI/o;let h=Math.abs(t/2),r=Math.abs(e/2);const i=1-s.curveFitting;return h+=G(h*i,s),r+=G(r*i,s),{increment:a,rx:h,ry:r}}function D(t,e,s,n){const[o,a]=F(n.increment,t,e,n.rx,n.ry,1,n.increment*E(.1,E(.4,1,s),s),s);let h=q(o,null,s);if(!s.disableMultiStroke&&0!==s.roughness){const[o]=F(n.increment,t,e,n.rx,n.ry,1.5,0,s),a=q(o,null,s);h=h.concat(a)}return{estimatedPoints:a,opset:{type:\"path\",ops:h}}}function A(t,e,s,n,o,a,h,r,i){const c=t,l=e;let u=Math.abs(s/2),p=Math.abs(n/2);u+=G(.01*u,i),p+=G(.01*p,i);let f=o,d=a;for(;f<0;)f+=2*Math.PI,d+=2*Math.PI;d-f>2*Math.PI&&(f=0,d=2*Math.PI);const g=2*Math.PI/i.curveStepCount,M=Math.min(g/2,(d-f)/2),k=V(M,c,l,u,p,f,d,1,i);if(!i.disableMultiStroke){const t=V(M,c,l,u,p,f,d,1.5,i);k.push(...t)}return h&&(r?k.push(...$(c,l,c+u*Math.cos(f),l+p*Math.sin(f),i),...$(c,l,c+u*Math.cos(d),l+p*Math.sin(d),i)):k.push({op:\"lineTo\",data:[c,l]},{op:\"lineTo\",data:[c+u*Math.cos(f),l+p*Math.sin(f)]})),{type:\"path\",ops:k}}function _(t,e){const s=m(y(b(t))),n=[];let o=[0,0],a=[0,0];for(const{key:t,data:h}of s)switch(t){case\"M\":a=[h[0],h[1]],o=[h[0],h[1]];break;case\"L\":n.push(...$(a[0],a[1],h[0],h[1],e)),a=[h[0],h[1]];break;case\"C\":{const[t,s,o,r,i,c]=h;n.push(...Z(t,s,o,r,i,c,a,e)),a=[i,c];break}case\"Z\":n.push(...$(a[0],a[1],o[0],o[1],e)),a=[o[0],o[1]]}return{type:\"path\",ops:n}}function I(t,e){const s=[];for(const n of t)if(n.length){const t=e.maxRandomnessOffset||0,o=n.length;if(o>2){s.push({op:\"move\",data:[n[0][0]+G(t,e),n[0][1]+G(t,e)]});for(let a=1;a<o;a++)s.push({op:\"lineTo\",data:[n[a][0]+G(t,e),n[a][1]+G(t,e)]})}}return{type:\"fillPath\",ops:s}}function C(t,e){return function(t,e){let s=t.fillStyle||\"hachure\";if(!u[s])switch(s){case\"zigzag\":u[s]||(u[s]=new h(e));break;case\"cross-hatch\":u[s]||(u[s]=new r(e));break;case\"dots\":u[s]||(u[s]=new i(e));break;case\"dashed\":u[s]||(u[s]=new c(e));break;case\"zigzag-line\":u[s]||(u[s]=new l(e));break;default:s=\"hachure\",u[s]||(u[s]=new o(e))}return u[s]}(e,P).fillPolygons(t,e)}function z(t){const e=Object.assign({},t);return e.randomizer=void 0,t.seed&&(e.seed=t.seed+1),e}function W(t){return t.randomizer||(t.randomizer=new p(t.seed||0)),t.randomizer.next()}function E(t,e,s,n=1){return s.roughness*n*(W(s)*(e-t)+t)}function G(t,e,s=1){return E(-t,t,e,s)}function $(t,e,s,n,o,a=!1){const h=a?o.disableMultiStrokeFill:o.disableMultiStroke,r=R(t,e,s,n,o,!0,!1);if(h)return r;const i=R(t,e,s,n,o,!0,!0);return r.concat(i)}function R(t,e,s,n,o,a,h){const r=Math.pow(t-s,2)+Math.pow(e-n,2),i=Math.sqrt(r);let c=1;c=i<200?1:i>500?.4:-.0016668*i+1.233334;let l=o.maxRandomnessOffset||0;l*l*100>r&&(l=i/10);const u=l/2,p=.2+.2*W(o);let f=o.bowing*o.maxRandomnessOffset*(n-e)/200,d=o.bowing*o.maxRandomnessOffset*(t-s)/200;f=G(f,o,c),d=G(d,o,c);const g=[],M=()=>G(u,o,c),k=()=>G(l,o,c),b=o.preserveVertices;return a&&(h?g.push({op:\"move\",data:[t+(b?0:M()),e+(b?0:M())]}):g.push({op:\"move\",data:[t+(b?0:G(l,o,c)),e+(b?0:G(l,o,c))]})),h?g.push({op:\"bcurveTo\",data:[f+t+(s-t)*p+M(),d+e+(n-e)*p+M(),f+t+2*(s-t)*p+M(),d+e+2*(n-e)*p+M(),s+(b?0:M()),n+(b?0:M())]}):g.push({op:\"bcurveTo\",data:[f+t+(s-t)*p+k(),d+e+(n-e)*p+k(),f+t+2*(s-t)*p+k(),d+e+2*(n-e)*p+k(),s+(b?0:k()),n+(b?0:k())]}),g}function j(t,e,s){if(!t.length)return[];const n=[];n.push([t[0][0]+G(e,s),t[0][1]+G(e,s)]),n.push([t[0][0]+G(e,s),t[0][1]+G(e,s)]);for(let o=1;o<t.length;o++)n.push([t[o][0]+G(e,s),t[o][1]+G(e,s)]),o===t.length-1&&n.push([t[o][0]+G(e,s),t[o][1]+G(e,s)]);return q(n,null,s)}function q(t,e,s){const n=t.length,o=[];if(n>3){const a=[],h=1-s.curveTightness;o.push({op:\"move\",data:[t[1][0],t[1][1]]});for(let e=1;e+2<n;e++){const s=t[e];a[0]=[s[0],s[1]],a[1]=[s[0]+(h*t[e+1][0]-h*t[e-1][0])/6,s[1]+(h*t[e+1][1]-h*t[e-1][1])/6],a[2]=[t[e+1][0]+(h*t[e][0]-h*t[e+2][0])/6,t[e+1][1]+(h*t[e][1]-h*t[e+2][1])/6],a[3]=[t[e+1][0],t[e+1][1]],o.push({op:\"bcurveTo\",data:[a[1][0],a[1][1],a[2][0],a[2][1],a[3][0],a[3][1]]})}if(e&&2===e.length){const t=s.maxRandomnessOffset;o.push({op:\"lineTo\",data:[e[0]+G(t,s),e[1]+G(t,s)]})}}else 3===n?(o.push({op:\"move\",data:[t[1][0],t[1][1]]}),o.push({op:\"bcurveTo\",data:[t[1][0],t[1][1],t[2][0],t[2][1],t[2][0],t[2][1]]})):2===n&&o.push(...R(t[0][0],t[0][1],t[1][0],t[1][1],s,!0,!0));return o}function F(t,e,s,n,o,a,h,r){const i=[],c=[];if(0===r.roughness){t/=4,c.push([e+n*Math.cos(-t),s+o*Math.sin(-t)]);for(let a=0;a<=2*Math.PI;a+=t){const t=[e+n*Math.cos(a),s+o*Math.sin(a)];i.push(t),c.push(t)}c.push([e+n*Math.cos(0),s+o*Math.sin(0)]),c.push([e+n*Math.cos(t),s+o*Math.sin(t)])}else{const l=G(.5,r)-Math.PI/2;c.push([G(a,r)+e+.9*n*Math.cos(l-t),G(a,r)+s+.9*o*Math.sin(l-t)]);const u=2*Math.PI+l-.01;for(let h=l;h<u;h+=t){const t=[G(a,r)+e+n*Math.cos(h),G(a,r)+s+o*Math.sin(h)];i.push(t),c.push(t)}c.push([G(a,r)+e+n*Math.cos(l+2*Math.PI+.5*h),G(a,r)+s+o*Math.sin(l+2*Math.PI+.5*h)]),c.push([G(a,r)+e+.98*n*Math.cos(l+h),G(a,r)+s+.98*o*Math.sin(l+h)]),c.push([G(a,r)+e+.9*n*Math.cos(l+.5*h),G(a,r)+s+.9*o*Math.sin(l+.5*h)])}return[c,i]}function V(t,e,s,n,o,a,h,r,i){const c=a+G(.1,i),l=[];l.push([G(r,i)+e+.9*n*Math.cos(c-t),G(r,i)+s+.9*o*Math.sin(c-t)]);for(let a=c;a<=h;a+=t)l.push([G(r,i)+e+n*Math.cos(a),G(r,i)+s+o*Math.sin(a)]);return l.push([e+n*Math.cos(h),s+o*Math.sin(h)]),l.push([e+n*Math.cos(h),s+o*Math.sin(h)]),q(l,null,i)}function Z(t,e,s,n,o,a,h,r){const i=[],c=[r.maxRandomnessOffset||1,(r.maxRandomnessOffset||1)+.3];let l=[0,0];const u=r.disableMultiStroke?1:2,p=r.preserveVertices;for(let f=0;f<u;f++)0===f?i.push({op:\"move\",data:[h[0],h[1]]}):i.push({op:\"move\",data:[h[0]+(p?0:G(c[0],r)),h[1]+(p?0:G(c[0],r))]}),l=p?[o,a]:[o+G(c[f],r),a+G(c[f],r)],i.push({op:\"bcurveTo\",data:[t+G(c[f],r),e+G(c[f],r),s+G(c[f],r),n+G(c[f],r),l[0],l[1]]});return i}function Q(t){return[...t]}function H(t,e=0){const s=t.length;if(s<3)throw new Error(\"A curve must have at least three points.\");const n=[];if(3===s)n.push(Q(t[0]),Q(t[1]),Q(t[2]),Q(t[2]));else{const s=[];s.push(t[0],t[0]);for(let e=1;e<t.length;e++)s.push(t[e]),e===t.length-1&&s.push(t[e]);const o=[],a=1-e;n.push(Q(s[0]));for(let t=1;t+2<s.length;t++){const e=s[t];o[0]=[e[0],e[1]],o[1]=[e[0]+(a*s[t+1][0]-a*s[t-1][0])/6,e[1]+(a*s[t+1][1]-a*s[t-1][1])/6],o[2]=[s[t+1][0]+(a*s[t][0]-a*s[t+2][0])/6,s[t+1][1]+(a*s[t][1]-a*s[t+2][1])/6],o[3]=[s[t+1][0],s[t+1][1]],n.push(o[1],o[2],o[3])}}return n}function N(t,e){return Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2)}function B(t,e,s){const n=N(e,s);if(0===n)return N(t,e);let o=((t[0]-e[0])*(s[0]-e[0])+(t[1]-e[1])*(s[1]-e[1]))/n;return o=Math.max(0,Math.min(1,o)),N(t,J(e,s,o))}function J(t,e,s){return[t[0]+(e[0]-t[0])*s,t[1]+(e[1]-t[1])*s]}function K(t,e,s,n){const o=n||[];if(function(t,e){const s=t[e+0],n=t[e+1],o=t[e+2],a=t[e+3];let h=3*n[0]-2*s[0]-a[0];h*=h;let r=3*n[1]-2*s[1]-a[1];r*=r;let i=3*o[0]-2*a[0]-s[0];i*=i;let c=3*o[1]-2*a[1]-s[1];return c*=c,h<i&&(h=i),r<c&&(r=c),h+r}(t,e)<s){const s=t[e+0];if(o.length){(a=o[o.length-1],h=s,Math.sqrt(N(a,h)))>1&&o.push(s)}else o.push(s);o.push(t[e+3])}else{const n=.5,a=t[e+0],h=t[e+1],r=t[e+2],i=t[e+3],c=J(a,h,n),l=J(h,r,n),u=J(r,i,n),p=J(c,l,n),f=J(l,u,n),d=J(p,f,n);K([a,c,p,d],0,s,o),K([d,f,u,i],0,s,o)}var a,h;return o}function U(t,e){return X(t,0,t.length,e)}function X(t,e,s,n,o){const a=o||[],h=t[e],r=t[s-1];let i=0,c=1;for(let n=e+1;n<s-1;++n){const e=B(t[n],h,r);e>i&&(i=e,c=n)}return Math.sqrt(i)>n?(X(t,e,c+1,n,a),X(t,c,s,n,a)):(a.length||a.push(h),a.push(r)),a}function Y(t,e=.15,s){const n=[],o=(t.length-1)/3;for(let s=0;s<o;s++){K(t,3*s,e,n)}return s&&s>0?X(n,0,n.length,s):n}const tt=\"none\";class et{constructor(t){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:\"#000\",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:\"hachure\",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=t||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(t){return t?Object.assign({},this.defaultOptions,t):this.defaultOptions}_d(t,e,s){return{shape:t,sets:e||[],options:s||this.defaultOptions}}line(t,e,s,n,o){const a=this._o(o);return this._d(\"line\",[v(t,e,s,n,a)],a)}rectangle(t,e,s,n,o){const a=this._o(o),h=[],r=O(t,e,s,n,a);if(a.fill){const o=[[t,e],[t+s,e],[t+s,e+n],[t,e+n]];\"solid\"===a.fillStyle?h.push(I([o],a)):h.push(C([o],a))}return a.stroke!==tt&&h.push(r),this._d(\"rectangle\",h,a)}ellipse(t,e,s,n,o){const a=this._o(o),h=[],r=T(s,n,a),i=D(t,e,a,r);if(a.fill)if(\"solid\"===a.fillStyle){const s=D(t,e,a,r).opset;s.type=\"fillPath\",h.push(s)}else h.push(C([i.estimatedPoints],a));return a.stroke!==tt&&h.push(i.opset),this._d(\"ellipse\",h,a)}circle(t,e,s,n){const o=this.ellipse(t,e,s,s,n);return o.shape=\"circle\",o}linearPath(t,e){const s=this._o(e);return this._d(\"linearPath\",[S(t,!1,s)],s)}arc(t,e,s,n,o,a,h=!1,r){const i=this._o(r),c=[],l=A(t,e,s,n,o,a,h,!0,i);if(h&&i.fill)if(\"solid\"===i.fillStyle){const h=Object.assign({},i);h.disableMultiStroke=!0;const r=A(t,e,s,n,o,a,!0,!1,h);r.type=\"fillPath\",c.push(r)}else c.push(function(t,e,s,n,o,a,h){const r=t,i=e;let c=Math.abs(s/2),l=Math.abs(n/2);c+=G(.01*c,h),l+=G(.01*l,h);let u=o,p=a;for(;u<0;)u+=2*Math.PI,p+=2*Math.PI;p-u>2*Math.PI&&(u=0,p=2*Math.PI);const f=(p-u)/h.curveStepCount,d=[];for(let t=u;t<=p;t+=f)d.push([r+c*Math.cos(t),i+l*Math.sin(t)]);return d.push([r+c*Math.cos(p),i+l*Math.sin(p)]),d.push([r,i]),C([d],h)}(t,e,s,n,o,a,i));return i.stroke!==tt&&c.push(l),this._d(\"arc\",c,i)}curve(t,e){const s=this._o(e),n=[],o=L(t,s);if(s.fill&&s.fill!==tt)if(\"solid\"===s.fillStyle){const e=L(t,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));n.push({type:\"fillPath\",ops:this._mergedShape(e.ops)})}else{const e=[],o=t;if(o.length){const t=\"number\"==typeof o[0][0]?[o]:o;for(const n of t)n.length<3?e.push(...n):3===n.length?e.push(...Y(H([n[0],n[0],n[1],n[2]]),10,(1+s.roughness)/2)):e.push(...Y(H(n),10,(1+s.roughness)/2))}e.length&&n.push(C([e],s))}return s.stroke!==tt&&n.push(o),this._d(\"curve\",n,s)}polygon(t,e){const s=this._o(e),n=[],o=S(t,!0,s);return s.fill&&(\"solid\"===s.fillStyle?n.push(I([t],s)):n.push(C([t],s))),s.stroke!==tt&&n.push(o),this._d(\"polygon\",n,s)}path(t,e){const s=this._o(e),n=[];if(!t)return this._d(\"path\",n,s);t=(t||\"\").replace(/\\n/g,\" \").replace(/(-\\s)/g,\"-\").replace(\"/(ss)/g\",\" \");const o=s.fill&&\"transparent\"!==s.fill&&s.fill!==tt,a=s.stroke!==tt,h=!!(s.simplification&&s.simplification<1),r=function(t,e,s){const n=m(y(b(t))),o=[];let a=[],h=[0,0],r=[];const i=()=>{r.length>=4&&a.push(...Y(r,e)),r=[]},c=()=>{i(),a.length&&(o.push(a),a=[])};for(const{key:t,data:e}of n)switch(t){case\"M\":c(),h=[e[0],e[1]],a.push(h);break;case\"L\":i(),a.push([e[0],e[1]]);break;case\"C\":if(!r.length){const t=a.length?a[a.length-1]:h;r.push([t[0],t[1]])}r.push([e[0],e[1]]),r.push([e[2],e[3]]),r.push([e[4],e[5]]);break;case\"Z\":i(),a.push([h[0],h[1]])}if(c(),!s)return o;const l=[];for(const t of o){const e=U(t,s);e.length&&l.push(e)}return l}(t,1,h?4-4*(s.simplification||1):(1+s.roughness)/2),i=_(t,s);if(o)if(\"solid\"===s.fillStyle)if(1===r.length){const e=_(t,Object.assign(Object.assign({},s),{disableMultiStroke:!0,roughness:s.roughness?s.roughness+s.fillShapeRoughnessGain:0}));n.push({type:\"fillPath\",ops:this._mergedShape(e.ops)})}else n.push(I(r,s));else n.push(C(r,s));return a&&(h?r.forEach((t=>{n.push(S(t,!1,s))})):n.push(i)),this._d(\"path\",n,s)}opsToPath(t,e){let s=\"\";for(const n of t.ops){const t=\"number\"==typeof e&&e>=0?n.data.map((t=>+t.toFixed(e))):n.data;switch(n.op){case\"move\":s+=`M${t[0]} ${t[1]} `;break;case\"bcurveTo\":s+=`C${t[0]} ${t[1]}, ${t[2]} ${t[3]}, ${t[4]} ${t[5]} `;break;case\"lineTo\":s+=`L${t[0]} ${t[1]} `}}return s.trim()}toPaths(t){const e=t.sets||[],s=t.options||this.defaultOptions,n=[];for(const t of e){let e=null;switch(t.type){case\"path\":e={d:this.opsToPath(t),stroke:s.stroke,strokeWidth:s.strokeWidth,fill:tt};break;case\"fillPath\":e={d:this.opsToPath(t),stroke:tt,strokeWidth:0,fill:s.fill||tt};break;case\"fillSketch\":e=this.fillSketch(t,s)}e&&n.push(e)}return n}fillSketch(t,e){let s=e.fillWeight;return s<0&&(s=e.strokeWidth/2),{d:this.opsToPath(t),stroke:e.fill||tt,strokeWidth:s,fill:tt}}_mergedShape(t){return t.filter(((t,e)=>0===e||\"move\"!==t.op))}}class st{constructor(t,e){this.canvas=t,this.ctx=this.canvas.getContext(\"2d\"),this.gen=new et(e)}draw(t){const e=t.sets||[],s=t.options||this.getDefaultOptions(),n=this.ctx,o=t.options.fixedDecimalPlaceDigits;for(const a of e)switch(a.type){case\"path\":n.save(),n.strokeStyle=\"none\"===s.stroke?\"transparent\":s.stroke,n.lineWidth=s.strokeWidth,s.strokeLineDash&&n.setLineDash(s.strokeLineDash),s.strokeLineDashOffset&&(n.lineDashOffset=s.strokeLineDashOffset),this._drawToContext(n,a,o),n.restore();break;case\"fillPath\":{n.save(),n.fillStyle=s.fill||\"\";const e=\"curve\"===t.shape||\"polygon\"===t.shape||\"path\"===t.shape?\"evenodd\":\"nonzero\";this._drawToContext(n,a,o,e),n.restore();break}case\"fillSketch\":this.fillSketch(n,a,s)}}fillSketch(t,e,s){let n=s.fillWeight;n<0&&(n=s.strokeWidth/2),t.save(),s.fillLineDash&&t.setLineDash(s.fillLineDash),s.fillLineDashOffset&&(t.lineDashOffset=s.fillLineDashOffset),t.strokeStyle=s.fill||\"\",t.lineWidth=n,this._drawToContext(t,e,s.fixedDecimalPlaceDigits),t.restore()}_drawToContext(t,e,s,n=\"nonzero\"){t.beginPath();for(const n of e.ops){const e=\"number\"==typeof s&&s>=0?n.data.map((t=>+t.toFixed(s))):n.data;switch(n.op){case\"move\":t.moveTo(e[0],e[1]);break;case\"bcurveTo\":t.bezierCurveTo(e[0],e[1],e[2],e[3],e[4],e[5]);break;case\"lineTo\":t.lineTo(e[0],e[1])}}\"fillPath\"===e.type?t.fill(n):t.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(t,e,s,n,o){const a=this.gen.line(t,e,s,n,o);return this.draw(a),a}rectangle(t,e,s,n,o){const a=this.gen.rectangle(t,e,s,n,o);return this.draw(a),a}ellipse(t,e,s,n,o){const a=this.gen.ellipse(t,e,s,n,o);return this.draw(a),a}circle(t,e,s,n){const o=this.gen.circle(t,e,s,n);return this.draw(o),o}linearPath(t,e){const s=this.gen.linearPath(t,e);return this.draw(s),s}polygon(t,e){const s=this.gen.polygon(t,e);return this.draw(s),s}arc(t,e,s,n,o,a,h=!1,r){const i=this.gen.arc(t,e,s,n,o,a,h,r);return this.draw(i),i}curve(t,e){const s=this.gen.curve(t,e);return this.draw(s),s}path(t,e){const s=this.gen.path(t,e);return this.draw(s),s}}const nt=\"http://www.w3.org/2000/svg\";class ot{constructor(t,e){this.svg=t,this.gen=new et(e)}draw(t){const e=t.sets||[],s=t.options||this.getDefaultOptions(),n=this.svg.ownerDocument||window.document,o=n.createElementNS(nt,\"g\"),a=t.options.fixedDecimalPlaceDigits;for(const h of e){let e=null;switch(h.type){case\"path\":e=n.createElementNS(nt,\"path\"),e.setAttribute(\"d\",this.opsToPath(h,a)),e.setAttribute(\"stroke\",s.stroke),e.setAttribute(\"stroke-width\",s.strokeWidth+\"\"),e.setAttribute(\"fill\",\"none\"),s.strokeLineDash&&e.setAttribute(\"stroke-dasharray\",s.strokeLineDash.join(\" \").trim()),s.strokeLineDashOffset&&e.setAttribute(\"stroke-dashoffset\",`${s.strokeLineDashOffset}`);break;case\"fillPath\":e=n.createElementNS(nt,\"path\"),e.setAttribute(\"d\",this.opsToPath(h,a)),e.setAttribute(\"stroke\",\"none\"),e.setAttribute(\"stroke-width\",\"0\"),e.setAttribute(\"fill\",s.fill||\"\"),\"curve\"!==t.shape&&\"polygon\"!==t.shape||e.setAttribute(\"fill-rule\",\"evenodd\");break;case\"fillSketch\":e=this.fillSketch(n,h,s)}e&&o.appendChild(e)}return o}fillSketch(t,e,s){let n=s.fillWeight;n<0&&(n=s.strokeWidth/2);const o=t.createElementNS(nt,\"path\");return o.setAttribute(\"d\",this.opsToPath(e,s.fixedDecimalPlaceDigits)),o.setAttribute(\"stroke\",s.fill||\"\"),o.setAttribute(\"stroke-width\",n+\"\"),o.setAttribute(\"fill\",\"none\"),s.fillLineDash&&o.setAttribute(\"stroke-dasharray\",s.fillLineDash.join(\" \").trim()),s.fillLineDashOffset&&o.setAttribute(\"stroke-dashoffset\",`${s.fillLineDashOffset}`),o}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,e){return this.gen.opsToPath(t,e)}line(t,e,s,n,o){const a=this.gen.line(t,e,s,n,o);return this.draw(a)}rectangle(t,e,s,n,o){const a=this.gen.rectangle(t,e,s,n,o);return this.draw(a)}ellipse(t,e,s,n,o){const a=this.gen.ellipse(t,e,s,n,o);return this.draw(a)}circle(t,e,s,n){const o=this.gen.circle(t,e,s,n);return this.draw(o)}linearPath(t,e){const s=this.gen.linearPath(t,e);return this.draw(s)}polygon(t,e){const s=this.gen.polygon(t,e);return this.draw(s)}arc(t,e,s,n,o,a,h=!1,r){const i=this.gen.arc(t,e,s,n,o,a,h,r);return this.draw(i)}curve(t,e){const s=this.gen.curve(t,e);return this.draw(s)}path(t,e){const s=this.gen.path(t,e);return this.draw(s)}}var at={canvas:(t,e)=>new st(t,e),svg:(t,e)=>new ot(t,e),generator:t=>new et(t),newSeed:()=>et.newSeed()};export{at as default};\n"],"names":["t","n","o","a","h","r","e","s","i","c","l","u","p","f","d","g","M","k","b","y","m","x","w","P","v","S","O","L","T","D","A","G","E","$","j","z","F","q","V","_","Z","I","C","W","R","Q","H","N","B","J","K","U","X","Y","tt","et","st","nt","ot","at"],"mappings":"4GAAA,SAASA,EAAEA,EAAE,EAAE,EAAE,CAAC,GAAGA,GAAGA,EAAE,OAAO,CAAC,KAAK,CAACC,EAAEC,CAAC,EAAE,EAAEC,EAAE,KAAK,GAAG,IAAI,EAAEC,EAAE,KAAK,IAAID,CAAC,EAAEE,EAAE,KAAK,IAAIF,CAAC,EAAE,UAAUG,KAAKN,EAAE,CAAC,KAAK,CAACA,EAAEO,CAAC,EAAED,EAAEA,EAAE,CAAC,GAAGN,EAAEC,GAAGG,GAAGG,EAAEL,GAAGG,EAAEJ,EAAEK,EAAE,CAAC,GAAGN,EAAEC,GAAGI,GAAGE,EAAEL,GAAGE,EAAEF,CAAC,CAAC,CAAC,CAAC,SAASI,GAAEN,EAAE,EAAE,CAAC,OAAOA,EAAE,CAAC,IAAI,EAAE,CAAC,GAAGA,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAASO,GAAEA,EAAEN,EAAEC,EAAEC,EAAE,EAAE,CAAC,MAAMC,EAAEF,EAAEG,EAAE,KAAK,IAAIJ,EAAE,EAAE,EAAEO,EAAED,EAAE,CAAC,GAAGA,EAAE,CAAC,EAAE,CAAC,GAAa,OAAOA,EAAE,CAAC,EAAE,CAAC,GAAvB,SAAyB,CAACA,CAAC,EAAEA,EAAEE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAGL,EAAE,UAAUE,KAAKE,EAAER,EAAEM,EAAEG,EAAEL,CAAC,EAAE,MAAMM,GAAE,SAASV,EAAEO,EAAEN,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAG,UAAUK,KAAKP,EAAE,CAAC,MAAMA,EAAE,CAAC,GAAGO,CAAC,EAAED,GAAEN,EAAE,CAAC,EAAEA,EAAEA,EAAE,OAAO,CAAC,CAAC,GAAGA,EAAE,KAAK,CAACA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAEA,EAAE,OAAO,GAAGE,EAAE,KAAKF,CAAC,CAAC,CAAC,MAAMG,EAAE,GAAGI,EAAE,KAAK,IAAIA,EAAE,EAAE,EAAE,MAAMH,EAAE,CAAA,EAAG,UAAUJ,KAAKE,EAAE,QAAQI,EAAE,EAAEA,EAAEN,EAAE,OAAO,EAAEM,IAAI,CAAC,MAAMC,EAAEP,EAAEM,CAAC,EAAEL,EAAED,EAAEM,EAAE,CAAC,EAAE,GAAGC,EAAE,CAAC,IAAIN,EAAE,CAAC,EAAE,CAAC,MAAMD,EAAE,KAAK,IAAIO,EAAE,CAAC,EAAEN,EAAE,CAAC,CAAC,EAAEG,EAAE,KAAK,CAAC,KAAKJ,EAAE,KAAK,KAAK,IAAIO,EAAE,CAAC,EAAEN,EAAE,CAAC,CAAC,EAAE,EAAED,IAAIO,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEN,EAAE,CAAC,EAAE,QAAQA,EAAE,CAAC,EAAEM,EAAE,CAAC,IAAIN,EAAE,CAAC,EAAEM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAGH,EAAE,MAAM,CAACJ,EAAEM,IAAIN,EAAE,KAAKM,EAAE,KAAK,GAAGN,EAAE,KAAKM,EAAE,KAAK,EAAEN,EAAE,EAAEM,EAAE,EAAE,GAAGN,EAAE,EAAEM,EAAE,EAAE,EAAEN,EAAE,OAAOM,EAAE,KAAK,GAAGN,EAAE,KAAKM,EAAE,MAAM,KAAK,IAAIN,EAAE,KAAKM,EAAE,IAAI,EAAC,EAAG,CAACF,EAAE,OAAO,OAAOD,EAAE,IAAIE,EAAE,CAAA,EAAGG,EAAEJ,EAAE,CAAC,EAAE,KAAKK,EAAE,EAAE,KAAKJ,EAAE,QAAQD,EAAE,QAAQ,CAAC,GAAGA,EAAE,OAAO,CAAC,IAAIJ,EAAE,GAAG,QAAQM,EAAE,EAAEA,EAAEF,EAAE,QAAQ,EAAEA,EAAEE,CAAC,EAAE,KAAKE,GAAGF,IAAIN,EAAEM,EAAEF,EAAE,OAAO,EAAEJ,EAAE,CAAC,EAAE,SAASA,GAAG,CAACK,EAAE,KAAK,CAAC,EAAEG,EAAE,KAAKR,CAAC,CAAC,CAAC,GAAG,CAAC,GAAGK,EAAEA,EAAE,QAAQL,GAAG,EAAEA,EAAE,KAAK,MAAMQ,GAAE,EAAGH,EAAE,MAAM,CAACL,EAAEM,IAAIN,EAAE,KAAK,IAAIM,EAAE,KAAK,EAAE,GAAGN,EAAE,KAAK,EAAEM,EAAE,KAAK,GAAG,KAAK,IAAIN,EAAE,KAAK,EAAEM,EAAE,KAAK,CAAC,EAAC,GAAQL,IAAJ,GAAOQ,EAAEF,GAAG,IAAIF,EAAE,OAAO,EAAE,QAAQL,EAAE,EAAEA,EAAEK,EAAE,OAAOL,GAAG,EAAE,CAAC,MAAMM,EAAEN,EAAE,EAAE,GAAGM,GAAGD,EAAE,OAAO,MAAM,MAAME,EAAEF,EAAEL,CAAC,EAAE,KAAKC,EAAEI,EAAEC,CAAC,EAAE,KAAKH,EAAE,KAAK,CAAC,CAAC,KAAK,MAAMI,EAAE,CAAC,EAAEC,CAAC,EAAE,CAAC,KAAK,MAAMP,EAAE,CAAC,EAAEO,CAAC,CAAC,CAAC,CAAC,CAACA,GAAGP,EAAEI,EAAE,SAASL,GAAG,CAACA,EAAE,KAAK,EAAEA,EAAE,KAAK,EAAEC,EAAED,EAAE,KAAK,MAAM,EAAC,EAAGS,GAAG,CAAC,OAAON,CAAC,GAAEK,EAAEH,EAAEF,CAAC,EAAE,GAAGC,EAAE,CAAC,UAAUE,KAAKE,EAAER,EAAEM,EAAEG,EAAE,CAACL,CAAC,GAAG,SAASE,EAAEC,EAAEN,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAGI,EAAE,SAASN,GAAGE,EAAE,KAAK,GAAGF,CAAC,EAAC,EAAGA,EAAEE,EAAEK,EAAEN,CAAC,CAAC,GAAES,EAAED,EAAE,CAACL,CAAC,CAAC,CAAC,OAAOM,CAAC,CAAC,SAAST,EAAED,EAAE,EAAE,CAAC,IAAIC,EAAE,MAAMC,EAAE,EAAE,aAAa,GAAG,IAAIC,EAAE,EAAE,WAAWA,EAAE,IAAIA,EAAE,EAAE,EAAE,aAAaA,EAAE,KAAK,MAAM,KAAK,IAAIA,EAAE,EAAE,CAAC,EAAE,IAAIC,EAAE,EAAE,OAAO,EAAE,WAAW,MAAaH,EAAE,EAAE,cAAZ,MAAkCA,IAAT,OAAW,OAAOA,EAAE,KAAI,IAAK,KAAK,OAAM,GAAI,KAAKG,EAAED,GAAGI,GAAEP,EAAEG,EAAED,EAAEE,GAAG,CAAC,CAAC,CAAC,MAAMF,EAAC,CAAC,YAAYF,EAAE,CAAC,KAAK,OAAOA,CAAC,CAAC,aAAaA,EAAEM,EAAE,CAAC,OAAO,KAAK,cAAcN,EAAEM,CAAC,CAAC,CAAC,cAAcN,EAAEM,EAAE,CAAC,MAAMC,EAAEN,EAAED,EAAEM,CAAC,EAAE,MAAM,CAAC,KAAK,aAAa,IAAI,KAAK,YAAYC,EAAED,CAAC,CAAC,CAAC,CAAC,YAAYN,EAAEM,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAG,UAAU,KAAKP,EAAEO,EAAE,KAAK,GAAG,KAAK,OAAO,cAAc,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAED,CAAC,CAAC,EAAE,OAAOC,CAAC,CAAC,CAAC,SAASJ,EAAEH,EAAE,CAAC,MAAM,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,OAAO,KAAK,KAAK,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAMI,WAAUF,EAAC,CAAC,aAAaF,EAAEM,EAAE,CAAC,IAAIC,EAAED,EAAE,WAAWC,EAAE,IAAIA,EAAE,EAAED,EAAE,aAAaC,EAAE,KAAK,IAAIA,EAAE,EAAE,EAAE,MAAML,EAAED,EAAED,EAAE,OAAO,OAAO,CAAA,EAAGM,EAAE,CAAC,WAAWC,CAAC,CAAC,CAAC,EAAEH,EAAE,KAAK,GAAG,IAAIE,EAAE,aAAa,EAAE,CAAA,EAAGE,EAAE,GAAGD,EAAE,KAAK,IAAIH,CAAC,EAAEK,EAAE,GAAGF,EAAE,KAAK,IAAIH,CAAC,EAAE,SAAS,CAACJ,EAAEM,CAAC,IAAIJ,EAAEC,EAAE,CAACH,EAAEM,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAACN,EAAE,CAAC,EAAEQ,EAAER,EAAE,CAAC,EAAES,CAAC,EAAE,CAAC,GAAGH,CAAC,CAAC,EAAE,CAAC,CAACN,EAAE,CAAC,EAAEQ,EAAER,EAAE,CAAC,EAAES,CAAC,EAAE,CAAC,GAAGH,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,aAAa,IAAI,KAAK,YAAY,EAAEA,CAAC,CAAC,CAAC,CAAC,CAAC,MAAMD,WAAUH,EAAC,CAAC,aAAaF,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,cAAcP,EAAEM,CAAC,EAAE,EAAE,OAAO,OAAO,CAAA,EAAGA,EAAE,CAAC,aAAaA,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,KAAK,cAAcN,EAAE,CAAC,EAAE,OAAOO,EAAE,IAAIA,EAAE,IAAI,OAAO,EAAE,GAAG,EAAEA,CAAC,CAAC,CAAC,MAAMC,EAAC,CAAC,YAAYR,EAAE,CAAC,KAAK,OAAOA,CAAC,CAAC,aAAaA,EAAEM,EAAE,CAAC,MAAMC,EAAEN,EAAED,EAAEM,EAAE,OAAO,OAAO,CAAA,EAAGA,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,YAAYC,EAAED,CAAC,CAAC,CAAC,YAAYN,EAAEM,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAG,IAAI,EAAED,EAAE,WAAW,EAAE,IAAI,EAAE,EAAEA,EAAE,aAAa,EAAE,KAAK,IAAI,EAAE,EAAE,EAAE,IAAI,EAAEA,EAAE,WAAW,EAAE,IAAI,EAAEA,EAAE,YAAY,GAAG,MAAMF,EAAE,EAAE,EAAE,UAAUC,KAAKL,EAAE,CAAC,MAAMA,EAAEG,EAAEE,CAAC,EAAEG,EAAER,EAAE,EAAE,EAAE,KAAK,KAAKQ,CAAC,EAAE,EAAEE,EAAEV,EAAE,EAAE,EAAEW,GAAGN,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAEO,EAAE,KAAK,IAAIP,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQL,EAAE,EAAEA,EAAE,EAAEA,IAAI,CAAC,MAAMG,EAAES,EAAEF,EAAEV,EAAE,EAAEK,EAAEM,EAAEP,EAAE,EAAE,KAAK,OAAM,EAAGA,EAAEI,EAAEL,EAAEC,EAAE,EAAE,KAAK,OAAM,EAAGA,EAAEK,EAAE,KAAK,OAAO,QAAQJ,EAAEG,EAAE,EAAE,EAAEF,CAAC,EAAEC,EAAE,KAAK,GAAGE,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,aAAa,IAAIF,CAAC,CAAC,CAAC,CAAC,MAAME,EAAC,CAAC,YAAYT,EAAE,CAAC,KAAK,OAAOA,CAAC,CAAC,aAAaA,EAAEM,EAAE,CAAC,MAAMC,EAAEN,EAAED,EAAEM,CAAC,EAAE,MAAM,CAAC,KAAK,aAAa,IAAI,KAAK,WAAWC,EAAED,CAAC,CAAC,CAAC,CAAC,WAAWN,EAAEM,EAAE,CAAC,MAAMC,EAAED,EAAE,WAAW,EAAEA,EAAE,WAAW,EAAE,EAAEA,EAAE,YAAYA,EAAE,WAAWA,EAAE,WAAW,EAAEA,EAAE,QAAQ,EAAEA,EAAE,WAAW,EAAE,EAAEA,EAAE,YAAYA,EAAE,WAAWA,EAAE,QAAQ,EAAE,CAAA,EAAG,OAAON,EAAE,SAASA,GAAG,CAAC,MAAM,EAAEG,EAAEH,CAAC,EAAEK,EAAE,KAAK,MAAM,GAAGE,EAAE,EAAE,EAAEC,GAAG,EAAE,EAAEH,GAAGE,EAAE,IAAI,EAAE,IAAI,EAAEP,EAAE,CAAC,EAAEU,EAAEV,EAAE,CAAC,EAAE,EAAE,CAAC,EAAEU,EAAE,CAAC,IAAI,EAAEV,EAAE,CAAC,EAAEU,EAAEV,EAAE,CAAC,GAAG,MAAMW,EAAE,KAAK,MAAMD,EAAE,CAAC,EAAE,EAAE,CAAC,IAAIA,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQV,EAAE,EAAEA,EAAEK,EAAEL,IAAI,CAAC,MAAMG,EAAEH,GAAGO,EAAE,GAAGH,EAAED,EAAEI,EAAEF,EAAE,CAAC,EAAE,CAAC,EAAEF,EAAE,KAAK,IAAIQ,CAAC,EAAEH,EAAE,KAAK,IAAIG,CAAC,EAAE,EAAE,CAAC,EAAER,EAAE,KAAK,IAAIQ,CAAC,EAAEH,EAAE,KAAK,IAAIG,CAAC,CAAC,EAAED,EAAE,CAAC,EAAE,CAAC,EAAEN,EAAE,KAAK,IAAIO,CAAC,EAAEH,EAAE,KAAK,IAAIG,CAAC,EAAE,EAAE,CAAC,EAAEP,EAAE,KAAK,IAAIO,CAAC,EAAEH,EAAE,KAAK,IAAIG,CAAC,CAAC,EAAE,EAAE,KAAK,GAAG,KAAK,OAAO,cAAcN,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEK,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEJ,CAAC,CAAC,CAAC,CAAC,EAAC,EAAG,CAAC,CAAC,CAAC,MAAMI,EAAC,CAAC,YAAYV,EAAE,CAAC,KAAK,OAAOA,CAAC,CAAC,aAAaA,EAAEM,EAAE,CAAC,MAAMC,EAAED,EAAE,WAAW,EAAE,EAAEA,EAAE,YAAYA,EAAE,WAAWJ,EAAEI,EAAE,aAAa,EAAEC,EAAED,EAAE,aAAaH,EAAEF,EAAED,EAAEM,EAAE,OAAO,OAAO,CAAA,EAAGA,EAAE,CAAC,WAAWC,EAAEL,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,aAAa,IAAI,KAAK,YAAYC,EAAED,EAAEI,CAAC,CAAC,CAAC,CAAC,YAAYN,EAAEM,EAAEC,EAAE,CAAC,MAAM,EAAE,CAAA,EAAG,OAAOP,EAAE,SAASA,GAAG,CAAC,MAAME,EAAEC,EAAEH,CAAC,EAAE,EAAE,KAAK,MAAME,GAAG,EAAEI,EAAE,EAAE,IAAID,EAAEL,EAAE,CAAC,EAAEQ,EAAER,EAAE,CAAC,EAAEK,EAAE,CAAC,EAAEG,EAAE,CAAC,IAAIH,EAAEL,EAAE,CAAC,EAAEQ,EAAER,EAAE,CAAC,GAAG,MAAM,EAAE,KAAK,MAAMQ,EAAE,CAAC,EAAEH,EAAE,CAAC,IAAIG,EAAE,CAAC,EAAEH,EAAE,CAAC,EAAE,EAAE,QAAQL,EAAE,EAAEA,EAAE,EAAEA,IAAI,CAAC,MAAME,EAAE,EAAEF,EAAEM,EAAEH,EAAE,GAAGH,EAAE,GAAGM,EAAEF,EAAE,KAAK,KAAK,EAAE,KAAK,IAAIE,EAAE,CAAC,CAAC,EAAEE,EAAE,CAACH,EAAE,CAAC,EAAEH,EAAE,KAAK,IAAI,CAAC,EAAEG,EAAE,CAAC,EAAEH,EAAE,KAAK,IAAI,CAAC,CAAC,EAAEQ,EAAE,CAACL,EAAE,CAAC,EAAEF,EAAE,KAAK,IAAI,CAAC,EAAEE,EAAE,CAAC,EAAEF,EAAE,KAAK,IAAI,CAAC,CAAC,EAAEQ,EAAE,CAACH,EAAE,CAAC,EAAEJ,EAAE,KAAK,IAAI,EAAE,KAAK,GAAG,CAAC,EAAEI,EAAE,CAAC,EAAEJ,EAAE,KAAK,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,GAAG,KAAK,OAAO,cAAcI,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEG,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEJ,CAAC,EAAE,GAAG,KAAK,OAAO,cAAcI,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAED,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEH,CAAC,CAAC,CAAC,CAAC,EAAC,EAAG,CAAC,CAAC,CAAC,MAAMI,EAAE,CAAA,EAAG,MAAMC,EAAC,CAAC,YAAYZ,EAAE,CAAC,KAAK,KAAKA,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,MAAM,GAAG,GAAG,GAAG,KAAK,KAAK,KAAK,KAAK,MAAM,KAAK,IAAI,IAAI,GAAG,GAAG,KAAK,OAAM,CAAE,CAAC,CAAC,MAAMa,GAAE,EAAEC,EAAE,EAAEC,GAAE,EAAEC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,SAASC,GAAEjB,EAAE,EAAE,CAAC,OAAOA,EAAE,OAAO,CAAC,CAAC,SAASkB,GAAElB,EAAE,CAAC,MAAM,EAAE,CAAA,EAAG,GAAE,SAASA,EAAE,CAAC,MAAMM,EAAE,IAAI,MAAM,KAAUN,IAAL,IAAQ,GAAGA,EAAE,MAAM,gBAAgB,EAAEA,EAAEA,EAAE,OAAO,OAAO,GAAG,MAAM,UAAUA,EAAE,MAAM,2BAA2B,EAAEM,EAAEA,EAAE,MAAM,EAAE,CAAC,KAAKO,GAAE,KAAK,OAAO,EAAE,EAAEb,EAAEA,EAAE,OAAO,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAACA,EAAE,MAAM,6DAA6D,EAAE,MAAM,CAAA,EAAGM,EAAEA,EAAE,MAAM,EAAE,CAAC,KAAKQ,EAAE,KAAK,GAAG,WAAW,OAAO,EAAE,CAAC,EAAE,EAAEd,EAAEA,EAAE,OAAO,OAAO,GAAG,MAAM,CAAC,CAAC,OAAOM,EAAEA,EAAE,MAAM,EAAE,CAAC,KAAKS,GAAE,KAAK,EAAE,EAAET,CAAC,GAAEN,CAAC,EAAE,IAAIC,EAAE,MAAMC,EAAE,EAAEC,EAAE,EAAED,CAAC,EAAE,KAAK,CAACe,GAAEd,EAAEY,EAAC,GAAG,CAAC,IAAIX,EAAE,EAAE,MAAMC,EAAE,CAAA,EAAG,GAAWJ,IAAR,MAAU,CAAC,GAASE,EAAE,OAAR,KAAoBA,EAAE,OAAR,IAAa,OAAOe,GAAE,OAAOlB,CAAC,EAAEE,IAAIE,EAAEY,EAAEb,EAAE,IAAI,EAAEF,EAAEE,EAAE,IAAI,MAAMc,GAAEd,EAAEW,CAAC,EAAEV,EAAEY,EAAEf,CAAC,GAAGC,IAAIE,EAAEY,EAAEb,EAAE,IAAI,EAAEF,EAAEE,EAAE,MAAM,GAAG,EAAED,EAAEE,EAAE,EAAE,QAAQ,MAAM,IAAI,MAAM,uBAAuB,EAAE,QAAQJ,EAAEE,EAAEF,EAAEE,EAAEE,EAAEJ,IAAI,CAAC,MAAMM,EAAE,EAAEN,CAAC,EAAE,GAAG,CAACiB,GAAEX,EAAEQ,CAAC,EAAE,MAAM,IAAI,MAAM,uBAAuBb,EAAE,IAAIK,EAAE,IAAI,EAAED,EAAEA,EAAE,MAAM,EAAE,CAACC,EAAE,IAAI,CAAC,GAAa,OAAOU,EAAEf,CAAC,GAApB,SAAsB,MAAM,IAAI,MAAM,gBAAgBA,CAAC,EAAE,CAAC,MAAMD,EAAE,CAAC,IAAIC,EAAE,KAAKI,CAAC,EAAE,EAAE,KAAKL,CAAC,EAAEE,GAAGE,EAAED,EAAE,EAAED,CAAC,EAAQD,IAAN,MAAUA,EAAE,KAAWA,IAAN,MAAUA,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,SAASkB,GAAEnB,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAE,MAAMC,EAAE,CAAA,EAAG,SAAS,CAAC,IAAIC,EAAE,KAAKC,CAAC,IAAIL,EAAE,OAAOI,EAAC,CAAE,IAAI,IAAID,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAACJ,EAAEC,CAAC,EAAEG,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAE,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAEF,EAAE,EAAEC,EAAE,EAAE,MAAM,IAAI,IAAIC,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAE,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIA,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,MAAML,EAAEK,EAAE,KAAK,CAACL,EAAEC,IAAIA,EAAE,EAAED,EAAE,EAAEA,EAAE,EAAC,EAAGG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAKH,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,IAAIG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,MAAML,EAAEK,EAAE,KAAK,CAACL,EAAEC,IAAIA,EAAE,EAAED,EAAE,EAAEA,EAAE,EAAC,EAAGG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAKH,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,IAAIG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAE,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACE,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIA,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIA,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,MAAML,EAAEK,EAAE,KAAK,CAACL,EAAEC,IAAIA,EAAE,EAAED,EAAE,EAAEA,EAAE,EAAC,EAAGG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAKH,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,IAAIG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGE,CAAC,CAAC,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,GAAGA,EAAE,CAAC,EAAE,GAAGA,EAAE,CAAC,EAAEF,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,IAAI,IAAIA,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAA,CAAE,CAAC,EAAE,EAAEF,EAAE,EAAEC,CAAC,CAAC,OAAOC,CAAC,CAAC,SAASiB,GAAEpB,EAAE,CAAC,MAAM,EAAE,CAAA,EAAG,IAAI,EAAE,GAAGC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,IAAII,EAAE,KAAKC,CAAC,IAAIV,EAAE,CAAC,OAAOS,EAAC,CAAE,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGC,CAAC,CAAC,CAAC,EAAE,CAACT,EAAEC,CAAC,EAAEQ,EAAE,CAACP,EAAEC,CAAC,EAAEM,EAAE,MAAM,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGA,CAAC,CAAC,CAAC,EAAET,EAAES,EAAE,CAAC,EAAER,EAAEQ,EAAE,CAAC,EAAEL,EAAEK,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,MAAM,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAGA,CAAC,CAAC,CAAC,EAAE,CAACT,EAAEC,CAAC,EAAEQ,EAAE,MAAM,IAAI,IAAIT,EAAES,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACT,EAAEC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIA,EAAEQ,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACT,EAAEC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,IAAIF,EAAE,EAAEG,EAAE,EAAQ,IAAN,KAAe,IAAN,KAASH,EAAEC,GAAGA,EAAEI,GAAGF,EAAED,GAAGA,EAAE,KAAKF,EAAEC,EAAEE,EAAED,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACF,EAAEG,EAAE,GAAGO,CAAC,CAAC,CAAC,EAAEL,EAAEK,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAET,EAAES,EAAE,CAAC,EAAER,EAAEQ,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAACV,EAAEG,CAAC,EAAEO,EAAE,IAAIN,EAAE,EAAEK,EAAE,EAAQ,IAAN,KAAe,IAAN,KAASL,EAAEH,GAAGA,EAAEI,GAAGI,EAAEP,GAAGA,EAAE,KAAKE,EAAEH,EAAEQ,EAAEP,GAAG,MAAMS,EAAEV,EAAE,GAAGG,EAAEH,GAAG,EAAEW,EAAEV,EAAE,GAAGO,EAAEP,GAAG,EAAEW,EAAEb,EAAE,GAAGI,EAAEJ,GAAG,EAAEc,EAAEX,EAAE,GAAGM,EAAEN,GAAG,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACQ,EAAEC,EAAEC,EAAEC,EAAEd,EAAEG,CAAC,CAAC,CAAC,EAAEE,EAAED,EAAE,EAAEK,EAAER,EAAED,EAAEE,EAAEC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAACH,EAAEO,EAAEJ,EAAEC,CAAC,EAAEM,EAAED,EAAER,EAAE,GAAGD,EAAEC,GAAG,EAAEU,EAAET,EAAE,GAAGK,EAAEL,GAAG,EAAEU,EAAET,EAAE,GAAGH,EAAEG,GAAG,EAAEU,EAAET,EAAE,GAAGG,EAAEH,GAAG,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACK,EAAEE,EAAEC,EAAEC,EAAEV,EAAEC,CAAC,CAAC,CAAC,EAAEC,EAAEL,EAAE,EAAEO,EAAEN,EAAEE,EAAED,EAAEE,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,MAAMJ,EAAE,KAAK,IAAIU,EAAE,CAAC,CAAC,EAAEH,EAAE,KAAK,IAAIG,EAAE,CAAC,CAAC,EAAEP,EAAEO,EAAE,CAAC,EAAEN,EAAEM,EAAE,CAAC,EAAEL,EAAEK,EAAE,CAAC,EAAEF,EAAEE,EAAE,CAAC,EAAED,EAAEC,EAAE,CAAC,EAASV,IAAJ,GAAWO,IAAJ,GAAM,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAACN,EAAEC,EAAEM,EAAEC,EAAED,EAAEC,CAAC,CAAC,CAAC,EAAER,EAAEO,EAAEN,EAAEO,IAAUR,IAAIO,GAAGN,IAAIO,KAAGY,GAAEpB,EAAEC,EAAEM,EAAEC,EAAET,EAAEO,EAAEJ,EAAEC,EAAEC,CAAC,EAAE,SAAS,SAASL,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,KAAKA,CAAC,CAAC,CAAC,EAAC,EAAGC,EAAEO,EAAEN,EAAEO,GAAE,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAA,CAAE,CAAC,EAAER,EAAEE,EAAED,EAAEE,CAAC,CAAC,EAAEK,CAAC,CAAC,OAAO,CAAC,CAAC,SAASa,EAAEtB,EAAE,EAAE,EAAE,CAAC,MAAM,CAACA,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAEA,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,SAASqB,GAAErB,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,EAAEI,EAAE,CAAC,MAAMC,GAAGC,EAAEP,EAAE,KAAK,GAAGO,EAAE,KAAK,IAAIA,EAAE,IAAI,EAAE,GAAGE,EAAE,EAAEC,EAAE,EAAE,EAAE,EAAEE,EAAE,EAAE,GAAGP,EAAE,CAACI,EAAEC,EAAE,EAAEE,CAAC,EAAEP,MAAM,CAAC,CAACT,EAAE,CAAC,EAAEsB,EAAEtB,EAAE,EAAE,CAACU,CAAC,EAAE,CAAC,EAAET,CAAC,EAAEqB,EAAE,EAAErB,EAAE,CAACS,CAAC,EAAE,MAAMN,GAAGJ,EAAE,GAAG,EAAES,GAAG,EAAER,GAAG,EAAE,IAAIU,EAAEP,EAAEA,GAAGF,EAAEA,GAAGO,EAAEA,GAAGN,EAAEA,GAAGQ,EAAE,IAAIA,EAAE,KAAK,KAAKA,CAAC,EAAET,GAAGS,EAAER,GAAGQ,GAAG,MAAMC,EAAEV,EAAEA,EAAEe,EAAEd,EAAEA,EAAEe,GAAEN,EAAEK,EAAEL,EAAEH,EAAEA,EAAEQ,EAAEb,EAAEA,EAAEe,GAAEP,EAAEH,EAAEA,EAAEQ,EAAEb,EAAEA,EAAEgB,IAAGf,IAAI,EAAE,GAAG,GAAG,KAAK,KAAK,KAAK,IAAIa,GAAEC,EAAC,CAAC,EAAE,EAAEC,GAAElB,EAAEO,EAAEN,GAAGH,EAAE,GAAG,EAAEgB,EAAEI,GAAE,CAACjB,EAAEC,EAAEF,GAAG,EAAED,GAAG,EAAEY,EAAE,KAAK,KAAK,aAAa,EAAEG,GAAGb,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAEW,EAAE,KAAK,KAAK,aAAab,EAAEe,GAAGb,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAEH,EAAE,IAAIa,EAAE,KAAK,GAAGA,GAAG,EAAE,IAAIC,EAAE,KAAK,GAAGA,GAAGD,EAAE,IAAIA,EAAE,EAAE,KAAK,GAAGA,GAAGC,EAAE,IAAIA,EAAE,EAAE,KAAK,GAAGA,GAAG,GAAGD,EAAEC,IAAID,GAAG,EAAE,KAAK,IAAI,CAAC,GAAGC,EAAED,IAAIC,GAAG,EAAE,KAAK,GAAG,CAAC,IAAIG,EAAEH,EAAED,EAAE,GAAG,KAAK,IAAII,CAAC,EAAE,IAAI,KAAK,GAAG,IAAI,CAAC,MAAMjB,EAAEc,EAAER,EAAE,EAAED,EAAEJ,EAAEa,EAAE,GAAGA,EAAED,EAAEA,EAAE,IAAI,KAAK,GAAG,IAAI,EAAEA,EAAE,IAAI,KAAK,GAAG,IAAI,GAAG,EAAEQ,GAAE,EAAE,EAAEnB,EAAE,KAAK,IAAIY,CAAC,EAAEb,EAAEe,EAAEb,EAAE,KAAK,IAAIW,CAAC,EAAER,EAAED,EAAEH,EAAEC,EAAEC,EAAE,EAAE,EAAE,CAACU,EAAEd,EAAE,EAAEgB,CAAC,CAAC,CAAC,CAACC,EAAEH,EAAED,EAAE,MAAMK,EAAE,KAAK,IAAIL,CAAC,EAAEM,EAAE,KAAK,IAAIN,CAAC,EAAEO,EAAE,KAAK,IAAIN,CAAC,EAAES,EAAE,KAAK,IAAIT,CAAC,EAAEU,EAAE,KAAK,IAAIP,EAAE,CAAC,EAAEQ,EAAE,EAAE,EAAEvB,EAAEsB,EAAEE,EAAE,EAAE,EAAEvB,EAAEqB,EAAEG,EAAE,CAAC3B,EAAE,CAAC,EAAE4B,EAAE,CAAC5B,EAAEyB,EAAEN,EAAE,EAAEO,EAAER,CAAC,EAAEW,EAAE,CAAC,EAAEJ,EAAEF,EAAEtB,EAAEyB,EAAEN,CAAC,EAAEU,GAAE,CAAC,EAAE7B,CAAC,EAAE,GAAG2B,EAAE,CAAC,EAAE,EAAED,EAAE,CAAC,EAAEC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,EAAED,EAAE,CAAC,EAAEC,EAAE,CAAC,EAAEnB,EAAE,MAAM,CAACmB,EAAEC,EAAEC,EAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAACF,EAAEC,EAAEC,EAAC,EAAE,OAAO,CAAC,EAAE,MAAM9B,EAAE,CAAA,EAAG,QAAQM,EAAE,EAAEA,EAAE,EAAE,OAAOA,GAAG,EAAE,CAAC,MAAMC,EAAEe,EAAE,EAAEhB,CAAC,EAAE,CAAC,EAAE,EAAEA,CAAC,EAAE,CAAC,EAAEI,CAAC,EAAET,EAAEqB,EAAE,EAAEhB,EAAE,CAAC,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEI,CAAC,EAAER,EAAEoB,EAAE,EAAEhB,EAAE,CAAC,EAAE,CAAC,EAAE,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEI,CAAC,EAAEV,EAAE,KAAK,CAACO,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEN,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEC,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAOF,CAAC,CAAC,CAAC,MAAMuB,GAAE,CAAC,WAAW,SAASvB,EAAE,EAAE,CAAC,OAAO+B,EAAE/B,EAAE,CAAC,CAAC,EAAE,oBAAoB,SAASA,EAAE,EAAE,EAAE,CAAC,OAAOgC,EAAEhC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,SAASA,EAAE,EAAE,EAAEC,EAAEC,EAAE,CAAC,MAAMC,EAAEyB,GAAE,EAAE3B,EAAEC,CAAC,EAAE,OAAO2B,GAAE7B,EAAE,EAAEE,EAAEC,CAAC,EAAE,KAAK,EAAE,cAAc,SAASH,EAAE,EAAE,EAAEC,EAAEC,EAAE,CAAC,OAAO+B,EAAEjC,EAAE,EAAE,EAAEC,EAAEC,EAAE,EAAE,CAAC,CAAC,EAAE,SAASsB,GAAExB,EAAE,EAAE,EAAEC,EAAEC,EAAE,CAAC,MAAM,CAAC,KAAK,OAAO,IAAI+B,EAAEjC,EAAE,EAAE,EAAEC,EAAEC,CAAC,CAAC,CAAC,CAAC,SAASuB,EAAEzB,EAAE,EAAE,EAAE,CAAC,MAAMC,GAAGD,GAAG,CAAA,GAAI,OAAO,GAAGC,EAAE,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAG,QAAQI,EAAE,EAAEA,EAAEL,EAAE,EAAEK,IAAIJ,EAAE,KAAK,GAAG+B,EAAEjC,EAAEM,CAAC,EAAE,CAAC,EAAEN,EAAEM,CAAC,EAAE,CAAC,EAAEN,EAAEM,EAAE,CAAC,EAAE,CAAC,EAAEN,EAAEM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,GAAGJ,EAAE,KAAK,GAAG+B,EAAEjC,EAAEC,EAAE,CAAC,EAAE,CAAC,EAAED,EAAEC,EAAE,CAAC,EAAE,CAAC,EAAED,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,IAAIE,CAAC,CAAC,CAAC,OAAWD,IAAJ,EAAMuB,GAAExB,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,IAAI,CAAA,CAAE,CAAC,CAAC,SAAS0B,GAAE1B,EAAE,EAAE,EAAEC,EAAEC,EAAE,CAAC,OAAO,SAASF,EAAEM,EAAE,CAAC,OAAOmB,EAAEzB,EAAE,GAAGM,CAAC,CAAC,GAAE,CAAC,CAACN,EAAE,CAAC,EAAE,CAACA,EAAE,EAAE,CAAC,EAAE,CAACA,EAAE,EAAE,EAAEC,CAAC,EAAE,CAACD,EAAE,EAAEC,CAAC,CAAC,EAAEC,CAAC,CAAC,CAAC,SAASyB,GAAE3B,EAAE,EAAE,CAAC,GAAGA,EAAE,OAAO,CAAC,MAAM,EAAY,OAAOA,EAAE,CAAC,EAAE,CAAC,GAAvB,SAAyB,CAACA,CAAC,EAAEA,EAAEC,EAAEiC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,EAAEhC,EAAE,EAAE,mBAAmB,CAAA,EAAGgC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,WAAWC,GAAE,CAAC,CAAC,EAAE,QAAQnC,EAAE,EAAEA,EAAE,EAAE,OAAOA,IAAI,CAAC,MAAMG,EAAE,EAAEH,CAAC,EAAE,GAAGG,EAAE,OAAO,CAAC,MAAMH,EAAEkC,EAAE/B,EAAE,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,EAAEI,EAAE,EAAE,mBAAmB,CAAA,EAAG2B,EAAE/B,EAAE,KAAK,EAAE,IAAI,EAAE,WAAWgC,GAAE,CAAC,CAAC,EAAE,UAAU7B,KAAKN,EAAWM,EAAE,KAAX,QAAeL,EAAE,KAAKK,CAAC,EAAE,UAAUN,KAAKO,EAAWP,EAAE,KAAX,QAAeE,EAAE,KAAKF,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,OAAO,IAAIC,EAAE,OAAOC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,OAAO,IAAI,CAAA,CAAE,CAAC,CAAC,SAAS0B,GAAE5B,EAAE,EAAE,EAAE,CAAC,MAAMC,EAAE,KAAK,KAAK,EAAE,KAAK,GAAG,KAAK,MAAM,KAAK,IAAID,EAAE,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAEE,EAAE,KAAK,KAAK,KAAK,IAAI,EAAE,eAAe,EAAE,eAAe,KAAK,KAAK,GAAG,EAAED,CAAC,CAAC,EAAEE,EAAE,EAAE,KAAK,GAAGD,EAAE,IAAIE,EAAE,KAAK,IAAIJ,EAAE,CAAC,EAAEK,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,OAAOD,GAAG2B,EAAE3B,EAAE,EAAE,CAAC,EAAEC,GAAG0B,EAAE1B,EAAE,EAAE,CAAC,EAAE,CAAC,UAAUF,EAAE,GAAGC,EAAE,GAAGC,CAAC,CAAC,CAAC,SAASwB,GAAE7B,EAAE,EAAE,EAAEC,EAAE,CAAC,KAAK,CAACC,EAAEC,CAAC,EAAEiC,GAAEnC,EAAE,UAAUD,EAAE,EAAEC,EAAE,GAAGA,EAAE,GAAG,EAAEA,EAAE,UAAU+B,EAAE,GAAGA,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI5B,EAAEiC,EAAEnC,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,oBAAwB,EAAE,YAAN,EAAgB,CAAC,KAAK,CAACA,CAAC,EAAEkC,GAAEnC,EAAE,UAAUD,EAAE,EAAEC,EAAE,GAAGA,EAAE,GAAG,IAAI,EAAE,CAAC,EAAEE,EAAEkC,EAAEnC,EAAE,KAAK,CAAC,EAAEE,EAAEA,EAAE,OAAOD,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgBA,EAAE,MAAM,CAAC,KAAK,OAAO,IAAIC,CAAC,CAAC,CAAC,CAAC,SAAS0B,GAAE9B,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,EAAE,CAAC,MAAMI,EAAET,EAAEU,EAAE,EAAE,IAAIC,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,IAAIV,EAAE,CAAC,EAAEU,GAAGoB,EAAE,IAAIpB,EAAE,CAAC,EAAE,GAAGoB,EAAE,IAAI,EAAE,CAAC,EAAE,IAAIlB,EAAEX,EAAEY,EAAEX,EAAE,KAAKU,EAAE,GAAGA,GAAG,EAAE,KAAK,GAAGC,GAAG,EAAE,KAAK,GAAGA,EAAED,EAAE,EAAE,KAAK,KAAKA,EAAE,EAAEC,EAAE,EAAE,KAAK,IAAI,MAAM,EAAE,EAAE,KAAK,GAAG,EAAE,eAAeE,EAAE,KAAK,IAAI,EAAE,GAAGF,EAAED,GAAG,CAAC,EAAEI,EAAEqB,GAAEtB,EAAEP,EAAEC,EAAEC,EAAE,EAAEE,EAAEC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,mBAAmB,CAAC,MAAMd,EAAEsC,GAAEtB,EAAEP,EAAEC,EAAEC,EAAE,EAAEE,EAAEC,EAAE,IAAI,CAAC,EAAEG,EAAE,KAAK,GAAGjB,CAAC,CAAC,CAAC,OAAOI,IAAIC,EAAEY,EAAE,KAAK,GAAGgB,EAAExB,EAAEC,EAAED,EAAEE,EAAE,KAAK,IAAIE,CAAC,EAAEH,EAAE,EAAE,KAAK,IAAIG,CAAC,EAAE,CAAC,EAAE,GAAGoB,EAAExB,EAAEC,EAAED,EAAEE,EAAE,KAAK,IAAIG,CAAC,EAAEJ,EAAE,EAAE,KAAK,IAAII,CAAC,EAAE,CAAC,CAAC,EAAEG,EAAE,KAAK,CAAC,GAAG,SAAS,KAAK,CAACR,EAAEC,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,KAAK,CAACD,EAAEE,EAAE,KAAK,IAAIE,CAAC,EAAEH,EAAE,EAAE,KAAK,IAAIG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,OAAO,IAAII,CAAC,CAAC,CAAC,SAASsB,GAAEvC,EAAE,EAAE,CAAC,MAAM,EAAEoB,GAAED,GAAED,GAAElB,CAAC,CAAC,CAAC,EAAEC,EAAE,CAAA,EAAG,IAAIC,EAAE,CAAC,EAAE,CAAC,EAAEC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,IAAIH,EAAE,KAAK,CAAC,IAAI,EAAE,OAAOA,EAAC,CAAE,IAAI,IAAIG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAED,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,IAAI,IAAID,EAAE,KAAK,GAAGgC,EAAE9B,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,KAAK,CAACH,EAAEO,EAAEL,EAAEG,EAAEG,EAAEC,CAAC,EAAE,EAAER,EAAE,KAAK,GAAGuC,GAAExC,EAAEO,EAAEL,EAAEG,EAAEG,EAAEC,EAAEN,EAAE,CAAC,CAAC,EAAEA,EAAE,CAACK,EAAEC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAIR,EAAE,KAAK,GAAGgC,EAAE9B,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAED,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,EAAEC,EAAE,CAACD,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,OAAO,IAAID,CAAC,CAAC,CAAC,SAASwC,GAAEzC,EAAE,EAAE,CAAC,MAAM,EAAE,CAAA,EAAG,UAAUC,KAAKD,EAAE,GAAGC,EAAE,OAAO,CAAC,MAAMD,EAAE,EAAE,qBAAqB,EAAE,EAAEC,EAAE,OAAO,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACA,EAAE,CAAC,EAAE,CAAC,EAAE8B,EAAE/B,EAAE,CAAC,EAAEC,EAAE,CAAC,EAAE,CAAC,EAAE8B,EAAE/B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQG,EAAE,EAAEA,EAAE,EAAEA,IAAI,EAAE,KAAK,CAAC,GAAG,SAAS,KAAK,CAACF,EAAEE,CAAC,EAAE,CAAC,EAAE4B,EAAE/B,EAAE,CAAC,EAAEC,EAAEE,CAAC,EAAE,CAAC,EAAE4B,EAAE/B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,SAAS0C,EAAE1C,EAAE,EAAE,CAAC,OAAO,SAASA,EAAEM,EAAE,CAAC,IAAIC,EAAEP,EAAE,WAAW,UAAU,GAAG,CAACW,EAAEJ,CAAC,EAAE,OAAOA,EAAC,CAAE,IAAI,SAASI,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIH,GAAEE,CAAC,GAAG,MAAM,IAAI,cAAcK,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIF,GAAEC,CAAC,GAAG,MAAM,IAAI,OAAOK,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIC,GAAEF,CAAC,GAAG,MAAM,IAAI,SAASK,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIE,GAAEH,CAAC,GAAG,MAAM,IAAI,cAAcK,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIG,GAAEJ,CAAC,GAAG,MAAM,QAAQC,EAAE,UAAUI,EAAEJ,CAAC,IAAII,EAAEJ,CAAC,EAAE,IAAIL,GAAEI,CAAC,EAAE,CAAC,OAAOK,EAAEJ,CAAC,CAAC,GAAE,EAAEgB,EAAC,EAAE,aAAavB,EAAE,CAAC,CAAC,CAAC,SAASmC,GAAEnC,EAAE,CAAC,MAAM,EAAE,OAAO,OAAO,CAAA,EAAGA,CAAC,EAAE,OAAO,EAAE,WAAW,OAAOA,EAAE,OAAO,EAAE,KAAKA,EAAE,KAAK,GAAG,CAAC,CAAC,SAAS2C,GAAE3C,EAAE,CAAC,OAAOA,EAAE,aAAaA,EAAE,WAAW,IAAIY,GAAEZ,EAAE,MAAM,CAAC,GAAGA,EAAE,WAAW,KAAI,CAAE,CAAC,SAASgC,EAAEhC,EAAE,EAAE,EAAEC,EAAE,EAAE,CAAC,OAAO,EAAE,UAAUA,GAAG0C,GAAE,CAAC,GAAG,EAAE3C,GAAGA,EAAE,CAAC,SAAS+B,EAAE/B,EAAE,EAAE,EAAE,EAAE,CAAC,OAAOgC,EAAE,CAAChC,EAAEA,EAAE,EAAE,CAAC,CAAC,CAAC,SAASiC,EAAEjC,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAE,GAAG,CAAC,MAAMC,EAAED,EAAED,EAAE,uBAAuBA,EAAE,mBAAmBG,EAAEuC,GAAE5C,EAAE,EAAE,EAAEC,EAAEC,EAAE,GAAG,EAAE,EAAE,GAAGE,EAAE,OAAOC,EAAE,MAAM,EAAEuC,GAAE5C,EAAE,EAAE,EAAEC,EAAEC,EAAE,GAAG,EAAE,EAAE,OAAOG,EAAE,OAAO,CAAC,CAAC,CAAC,SAASuC,GAAE5C,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAIL,EAAE,EAAE,CAAC,EAAE,KAAK,IAAI,EAAEC,EAAE,CAAC,EAAE,EAAE,KAAK,KAAKI,CAAC,EAAE,IAAII,EAAE,EAAEA,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,GAAG,UAAU,EAAE,SAAS,IAAIC,EAAER,EAAE,qBAAqB,EAAEQ,EAAEA,EAAE,IAAIL,IAAIK,EAAE,EAAE,IAAI,MAAMC,EAAED,EAAE,EAAE,EAAE,GAAG,GAAGiC,GAAEzC,CAAC,EAAE,IAAIW,EAAEX,EAAE,OAAOA,EAAE,qBAAqBD,EAAE,GAAG,IAAIa,EAAEZ,EAAE,OAAOA,EAAE,qBAAqBF,EAAE,GAAG,IAAIa,EAAEkB,EAAElB,EAAEX,EAAEO,CAAC,EAAEK,EAAEiB,EAAEjB,EAAEZ,EAAEO,CAAC,EAAE,MAAM,EAAE,CAAA,EAAGO,EAAE,IAAIe,EAAEpB,EAAET,EAAEO,CAAC,EAAEQ,EAAE,IAAIc,EAAErB,EAAER,EAAEO,CAAC,EAAES,EAAEhB,EAAE,iBAAiB,OAAWE,EAAE,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACJ,GAAGkB,EAAE,EAAEF,EAAC,GAAI,GAAGE,EAAE,EAAEF,EAAC,EAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAAChB,GAAGkB,EAAE,EAAEa,EAAErB,EAAER,EAAEO,CAAC,GAAG,GAAGS,EAAE,EAAEa,EAAErB,EAAER,EAAEO,CAAC,EAAE,CAAC,CAAC,EAAGL,EAAE,EAAE,KAAK,CAAC,GAAG,WAAW,KAAK,CAACS,EAAEb,GAAG,EAAEA,GAAG,EAAEgB,EAAC,EAAGF,EAAE,GAAGb,EAAE,GAAG,EAAEe,EAAC,EAAGH,EAAEb,EAAE,GAAG,EAAEA,GAAG,EAAEgB,EAAC,EAAGF,EAAE,EAAE,GAAGb,EAAE,GAAG,EAAEe,EAAC,EAAG,GAAGE,EAAE,EAAEF,EAAC,GAAIf,GAAGiB,EAAE,EAAEF,EAAC,EAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,WAAW,KAAK,CAACH,EAAEb,GAAG,EAAEA,GAAG,EAAEiB,EAAC,EAAGH,EAAE,GAAGb,EAAE,GAAG,EAAEgB,EAAC,EAAGJ,EAAEb,EAAE,GAAG,EAAEA,GAAG,EAAEiB,EAAC,EAAGH,EAAE,EAAE,GAAGb,EAAE,GAAG,EAAEgB,EAAC,EAAG,GAAGC,EAAE,EAAED,EAAC,GAAIhB,GAAGiB,EAAE,EAAED,EAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAASiB,EAAElC,EAAE,EAAE,EAAE,CAAC,GAAG,CAACA,EAAE,OAAO,MAAM,CAAA,EAAG,MAAMC,EAAE,CAAA,EAAGA,EAAE,KAAK,CAACD,EAAE,CAAC,EAAE,CAAC,EAAE+B,EAAE,EAAE,CAAC,EAAE/B,EAAE,CAAC,EAAE,CAAC,EAAE+B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE9B,EAAE,KAAK,CAACD,EAAE,CAAC,EAAE,CAAC,EAAE+B,EAAE,EAAE,CAAC,EAAE/B,EAAE,CAAC,EAAE,CAAC,EAAE+B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ7B,EAAE,EAAEA,EAAEF,EAAE,OAAOE,IAAID,EAAE,KAAK,CAACD,EAAEE,CAAC,EAAE,CAAC,EAAE6B,EAAE,EAAE,CAAC,EAAE/B,EAAEE,CAAC,EAAE,CAAC,EAAE6B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE7B,IAAIF,EAAE,OAAO,GAAGC,EAAE,KAAK,CAACD,EAAEE,CAAC,EAAE,CAAC,EAAE6B,EAAE,EAAE,CAAC,EAAE/B,EAAEE,CAAC,EAAE,CAAC,EAAE6B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,OAAOM,EAAEpC,EAAE,KAAK,CAAC,CAAC,CAAC,SAASoC,EAAErC,EAAE,EAAE,EAAE,CAAC,MAAMC,EAAED,EAAE,OAAOE,EAAE,GAAG,GAAGD,EAAE,EAAE,CAAC,MAAME,EAAE,CAAA,EAAGC,EAAE,EAAE,EAAE,eAAeF,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACF,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQM,EAAE,EAAEA,EAAE,EAAEL,EAAEK,IAAI,CAAC,MAAMC,EAAEP,EAAEM,CAAC,EAAEH,EAAE,CAAC,EAAE,CAACI,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAEJ,EAAE,CAAC,EAAE,CAACI,EAAE,CAAC,GAAGH,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,EAAEF,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAEC,EAAE,CAAC,GAAGH,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,EAAEF,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAEH,EAAE,CAAC,EAAE,CAACH,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAGF,EAAEJ,EAAEM,CAAC,EAAE,CAAC,EAAEF,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAEN,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAGF,EAAEJ,EAAEM,CAAC,EAAE,CAAC,EAAEF,EAAEJ,EAAEM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAEH,EAAE,CAAC,EAAE,CAACH,EAAEM,EAAE,CAAC,EAAE,CAAC,EAAEN,EAAEM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAEJ,EAAE,KAAK,CAAC,GAAG,WAAW,KAAK,CAACC,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAwG,MAAUF,IAAJ,GAAOC,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACF,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAEE,EAAE,KAAK,CAAC,GAAG,WAAW,KAAK,CAACF,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAOC,IAAJ,GAAOC,EAAE,KAAK,GAAG0C,GAAE5C,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,OAAOE,CAAC,CAAC,SAASkC,GAAEpC,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,CAAC,MAAM,EAAE,CAAA,EAAGI,EAAE,CAAA,EAAG,GAAOJ,EAAE,YAAN,EAAgB,CAACL,GAAG,EAAES,EAAE,KAAK,CAAC,EAAER,EAAE,KAAK,IAAI,CAACD,CAAC,EAAE,EAAEE,EAAE,KAAK,IAAI,CAACF,CAAC,CAAC,CAAC,EAAE,QAAQG,EAAE,EAAEA,GAAG,EAAE,KAAK,GAAGA,GAAGH,EAAE,CAAC,MAAMA,EAAE,CAAC,EAAEC,EAAE,KAAK,IAAIE,CAAC,EAAE,EAAED,EAAE,KAAK,IAAIC,CAAC,CAAC,EAAE,EAAE,KAAKH,CAAC,EAAES,EAAE,KAAKT,CAAC,CAAC,CAACS,EAAE,KAAK,CAAC,EAAER,EAAE,KAAK,IAAI,CAAC,EAAE,EAAEC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,EAAEO,EAAE,KAAK,CAAC,EAAER,EAAE,KAAK,IAAID,CAAC,EAAE,EAAEE,EAAE,KAAK,IAAIF,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAMU,EAAEqB,EAAE,GAAG1B,CAAC,EAAE,KAAK,GAAG,EAAEI,EAAE,KAAK,CAACsB,EAAE5B,EAAEE,CAAC,EAAE,EAAE,GAAGJ,EAAE,KAAK,IAAIS,EAAEV,CAAC,EAAE+B,EAAE5B,EAAEE,CAAC,EAAE,EAAE,GAAGH,EAAE,KAAK,IAAIQ,EAAEV,CAAC,CAAC,CAAC,EAAE,MAAMW,EAAE,EAAE,KAAK,GAAGD,EAAE,IAAI,QAAQN,EAAEM,EAAEN,EAAEO,EAAEP,GAAGJ,EAAE,CAAC,MAAMA,EAAE,CAAC+B,EAAE5B,EAAEE,CAAC,EAAE,EAAEJ,EAAE,KAAK,IAAIG,CAAC,EAAE2B,EAAE5B,EAAEE,CAAC,EAAE,EAAEH,EAAE,KAAK,IAAIE,CAAC,CAAC,EAAE,EAAE,KAAKJ,CAAC,EAAES,EAAE,KAAKT,CAAC,CAAC,CAACS,EAAE,KAAK,CAACsB,EAAE5B,EAAEE,CAAC,EAAE,EAAEJ,EAAE,KAAK,IAAIS,EAAE,EAAE,KAAK,GAAG,GAAGN,CAAC,EAAE2B,EAAE5B,EAAEE,CAAC,EAAE,EAAEH,EAAE,KAAK,IAAIQ,EAAE,EAAE,KAAK,GAAG,GAAGN,CAAC,CAAC,CAAC,EAAEK,EAAE,KAAK,CAACsB,EAAE5B,EAAEE,CAAC,EAAE,EAAE,IAAIJ,EAAE,KAAK,IAAIS,EAAEN,CAAC,EAAE2B,EAAE5B,EAAEE,CAAC,EAAE,EAAE,IAAIH,EAAE,KAAK,IAAIQ,EAAEN,CAAC,CAAC,CAAC,EAAEK,EAAE,KAAK,CAACsB,EAAE5B,EAAEE,CAAC,EAAE,EAAE,GAAGJ,EAAE,KAAK,IAAIS,EAAE,GAAGN,CAAC,EAAE2B,EAAE5B,EAAEE,CAAC,EAAE,EAAE,GAAGH,EAAE,KAAK,IAAIQ,EAAE,GAAGN,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAACK,EAAE,CAAC,CAAC,CAAC,SAAS6B,GAAEtC,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,EAAE,CAAC,MAAMI,EAAEN,EAAE4B,EAAE,GAAG,CAAC,EAAErB,EAAE,CAAA,EAAGA,EAAE,KAAK,CAACqB,EAAE1B,EAAE,CAAC,EAAE,EAAE,GAAGJ,EAAE,KAAK,IAAIQ,EAAET,CAAC,EAAE+B,EAAE1B,EAAE,CAAC,EAAE,EAAE,GAAGH,EAAE,KAAK,IAAIO,EAAET,CAAC,CAAC,CAAC,EAAE,QAAQG,EAAEM,EAAEN,GAAGC,EAAED,GAAGH,EAAEU,EAAE,KAAK,CAACqB,EAAE1B,EAAE,CAAC,EAAE,EAAEJ,EAAE,KAAK,IAAIE,CAAC,EAAE4B,EAAE1B,EAAE,CAAC,EAAE,EAAEH,EAAE,KAAK,IAAIC,CAAC,CAAC,CAAC,EAAE,OAAOO,EAAE,KAAK,CAAC,EAAET,EAAE,KAAK,IAAIG,CAAC,EAAE,EAAEF,EAAE,KAAK,IAAIE,CAAC,CAAC,CAAC,EAAEM,EAAE,KAAK,CAAC,EAAET,EAAE,KAAK,IAAIG,CAAC,EAAE,EAAEF,EAAE,KAAK,IAAIE,CAAC,CAAC,CAAC,EAAEiC,EAAE3B,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS8B,GAAExC,EAAE,EAAE,EAAEC,EAAEC,EAAEC,EAAEC,EAAEC,EAAE,CAAC,MAAM,EAAE,GAAGI,EAAE,CAACJ,EAAE,qBAAqB,GAAGA,EAAE,qBAAqB,GAAG,EAAE,EAAE,IAAIK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAMC,EAAEN,EAAE,mBAAmB,EAAE,EAAE,EAAEA,EAAE,iBAAiB,QAAQQ,EAAE,EAAEA,EAAEF,EAAEE,IAAQA,IAAJ,EAAM,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACT,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,OAAO,KAAK,CAACA,EAAE,CAAC,GAAG,EAAE,EAAE2B,EAAEtB,EAAE,CAAC,EAAEJ,CAAC,GAAGD,EAAE,CAAC,GAAG,EAAE,EAAE2B,EAAEtB,EAAE,CAAC,EAAEJ,CAAC,EAAE,CAAC,CAAC,EAAEK,EAAE,EAAE,CAACR,EAAEC,CAAC,EAAE,CAACD,EAAE6B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,EAAEF,EAAE4B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,WAAW,KAAK,CAACL,EAAE+B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,EAAE,EAAE0B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,EAAE,EAAE0B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,EAAEJ,EAAE8B,EAAEtB,EAAEI,CAAC,EAAER,CAAC,EAAEK,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,SAASmC,EAAE7C,EAAE,CAAC,MAAM,CAAC,GAAGA,CAAC,CAAC,CAAC,SAAS8C,GAAE9C,EAAE,EAAE,EAAE,CAAC,MAAM,EAAEA,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,IAAI,MAAM,0CAA0C,EAAE,MAAMC,EAAE,CAAA,EAAG,GAAO,IAAJ,EAAMA,EAAE,KAAK4C,EAAE7C,EAAE,CAAC,CAAC,EAAE6C,EAAE7C,EAAE,CAAC,CAAC,EAAE6C,EAAE7C,EAAE,CAAC,CAAC,EAAE6C,EAAE7C,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAMO,EAAE,CAAA,EAAGA,EAAE,KAAKP,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,QAAQM,EAAE,EAAEA,EAAEN,EAAE,OAAOM,IAAIC,EAAE,KAAKP,EAAEM,CAAC,CAAC,EAAEA,IAAIN,EAAE,OAAO,GAAGO,EAAE,KAAKP,EAAEM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAA,EAAGH,EAAE,EAAE,EAAEF,EAAE,KAAK4C,EAAEtC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQP,EAAE,EAAEA,EAAE,EAAEO,EAAE,OAAOP,IAAI,CAAC,MAAMM,EAAEC,EAAEP,CAAC,EAAE,EAAE,CAAC,EAAE,CAACM,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAACA,EAAE,CAAC,GAAGH,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,EAAEG,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAG,EAAEM,EAAE,CAAC,GAAGH,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,EAAEG,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAACO,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAGG,EAAEI,EAAEP,CAAC,EAAE,CAAC,EAAEG,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAG,EAAEO,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAGG,EAAEI,EAAEP,CAAC,EAAE,CAAC,EAAEG,EAAEI,EAAEP,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAACO,EAAEP,EAAE,CAAC,EAAE,CAAC,EAAEO,EAAEP,EAAE,CAAC,EAAE,CAAC,CAAC,EAAEC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAOA,CAAC,CAAC,SAAS8C,EAAE/C,EAAE,EAAE,CAAC,OAAO,KAAK,IAAIA,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,IAAIA,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAASgD,GAAEhD,EAAE,EAAE,EAAE,CAAC,MAAMC,EAAE8C,EAAE,EAAE,CAAC,EAAE,GAAO9C,IAAJ,EAAM,OAAO8C,EAAE/C,EAAE,CAAC,EAAE,IAAIE,IAAIF,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAIA,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAIC,EAAE,OAAOC,EAAE,KAAK,IAAI,EAAE,KAAK,IAAI,EAAEA,CAAC,CAAC,EAAE6C,EAAE/C,EAAEiD,EAAE,EAAE,EAAE/C,CAAC,CAAC,CAAC,CAAC,SAAS+C,EAAEjD,EAAE,EAAE,EAAE,CAAC,MAAM,CAACA,EAAE,CAAC,GAAG,EAAE,CAAC,EAAEA,EAAE,CAAC,GAAG,EAAEA,EAAE,CAAC,GAAG,EAAE,CAAC,EAAEA,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAASkD,GAAElD,EAAE,EAAE,EAAEC,EAAE,CAAC,MAAMC,EAAED,GAAG,CAAA,EAAG,IAAG,SAASD,EAAEM,EAAE,CAAC,MAAMC,EAAEP,EAAEM,EAAE,CAAC,EAAEL,EAAED,EAAEM,EAAE,CAAC,EAAEJ,EAAEF,EAAEM,EAAE,CAAC,EAAEH,EAAEH,EAAEM,EAAE,CAAC,EAAE,IAAIF,EAAE,EAAEH,EAAE,CAAC,EAAE,EAAEM,EAAE,CAAC,EAAEJ,EAAE,CAAC,EAAEC,GAAGA,EAAE,IAAIC,EAAE,EAAEJ,EAAE,CAAC,EAAE,EAAEM,EAAE,CAAC,EAAEJ,EAAE,CAAC,EAAEE,GAAGA,EAAE,IAAIG,EAAE,EAAEN,EAAE,CAAC,EAAE,EAAEC,EAAE,CAAC,EAAEI,EAAE,CAAC,EAAEC,GAAGA,EAAE,IAAIC,EAAE,EAAEP,EAAE,CAAC,EAAE,EAAEC,EAAE,CAAC,EAAEI,EAAE,CAAC,EAAE,OAAOE,GAAGA,EAAEL,EAAEI,IAAIJ,EAAEI,GAAGH,EAAEI,IAAIJ,EAAEI,GAAGL,EAAEC,CAAC,GAAEL,EAAE,CAAC,EAAE,EAAE,CAAC,MAAMO,EAAEP,EAAE,EAAE,CAAC,EAAKE,EAAE,QAASC,EAAED,EAAEA,EAAE,OAAO,CAAC,EAAEE,EAAEG,EAAE,KAAK,KAAKwC,EAAE5C,EAAEC,CAAC,CAAC,EAAG,GAAGF,EAAE,KAAKK,CAAC,GAAOL,EAAE,KAAKK,CAAC,EAAEL,EAAE,KAAKF,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAWG,EAAEH,EAAE,EAAE,CAAC,EAAEI,EAAEJ,EAAE,EAAE,CAAC,EAAEK,EAAEL,EAAE,EAAE,CAAC,EAAEQ,EAAER,EAAE,EAAE,CAAC,EAAES,EAAEwC,EAAE9C,EAAEC,EAAE,EAAC,EAAEM,EAAEuC,EAAE7C,EAAEC,EAAE,EAAC,EAAEM,EAAEsC,EAAE5C,EAAEG,EAAE,EAAC,EAAEI,EAAEqC,EAAExC,EAAEC,EAAE,EAAC,EAAEG,EAAEoC,EAAEvC,EAAEC,EAAE,EAAC,EAAEG,EAAEmC,EAAErC,EAAEC,EAAE,EAAC,EAAEqC,GAAE,CAAC/C,EAAEM,EAAEG,EAAEE,CAAC,EAAE,EAAE,EAAEZ,CAAC,EAAEgD,GAAE,CAACpC,EAAED,EAAEF,EAAEH,CAAC,EAAE,EAAE,EAAEN,CAAC,CAAC,CAAC,IAAIC,EAAEC,EAAE,OAAOF,CAAC,CAAC,SAASiD,GAAEnD,EAAE,EAAE,CAAC,OAAOoD,EAAEpD,EAAE,EAAEA,EAAE,OAAO,CAAC,CAAC,CAAC,SAASoD,EAAEpD,EAAE,EAAE,EAAEC,EAAEC,EAAE,CAAC,MAAMC,EAAED,GAAG,CAAA,EAAGE,EAAEJ,EAAE,CAAC,EAAEK,EAAEL,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAES,EAAE,EAAE,QAAQR,EAAE,EAAE,EAAEA,EAAE,EAAE,EAAE,EAAEA,EAAE,CAAC,MAAMK,EAAE0C,GAAEhD,EAAEC,CAAC,EAAEG,EAAEC,CAAC,EAAEC,EAAE,IAAI,EAAEA,EAAEG,EAAER,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC,EAAEA,GAAGmD,EAAEpD,EAAE,EAAES,EAAE,EAAER,EAAEE,CAAC,EAAEiD,EAAEpD,EAAES,EAAE,EAAER,EAAEE,CAAC,IAAIA,EAAE,QAAQA,EAAE,KAAKC,CAAC,EAAED,EAAE,KAAKE,CAAC,GAAGF,CAAC,CAAC,SAASkD,GAAErD,EAAE,EAAE,IAAI,EAAE,CAAC,MAAMC,EAAE,CAAA,EAAGC,GAAGF,EAAE,OAAO,GAAG,EAAE,QAAQO,EAAE,EAAEA,EAAEL,EAAEK,IAAK2C,GAAElD,EAAE,EAAEO,EAAE,EAAEN,CAAC,EAAE,OAAO,GAAG,EAAE,EAAEmD,EAAEnD,EAAE,EAAEA,EAAE,OAAO,CAAC,EAAEA,CAAC,CAAC,MAAMqD,EAAG,OAAO,MAAMC,CAAE,CAAC,YAAYvD,EAAE,CAAC,KAAK,eAAe,CAAC,oBAAoB,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,OAAO,YAAY,EAAE,eAAe,EAAE,aAAa,IAAI,eAAe,EAAE,UAAU,UAAU,WAAW,GAAG,aAAa,IAAI,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,KAAK,EAAE,mBAAmB,GAAG,uBAAuB,GAAG,iBAAiB,GAAG,uBAAuB,EAAE,EAAE,KAAK,OAAOA,GAAG,CAAA,EAAG,KAAK,OAAO,UAAU,KAAK,eAAe,KAAK,GAAG,KAAK,OAAO,OAAO,EAAE,CAAC,OAAO,SAAS,CAAC,OAAO,KAAK,MAAM,KAAK,OAAM,EAAG,GAAG,EAAE,CAAC,CAAC,GAAGA,EAAE,CAAC,OAAOA,EAAE,OAAO,OAAO,CAAA,EAAG,KAAK,eAAeA,CAAC,EAAE,KAAK,cAAc,CAAC,GAAGA,EAAEM,EAAEC,EAAE,CAAC,MAAM,CAAC,MAAMP,EAAE,KAAKM,GAAG,CAAA,EAAG,QAAQC,GAAG,KAAK,cAAc,CAAC,CAAC,KAAKP,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,KAAK,GAAG,OAAO,CAACqB,GAAExB,EAAEM,EAAEC,EAAE,EAAEJ,CAAC,CAAC,EAAEA,CAAC,CAAC,CAAC,UAAUH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAA,EAAGE,EAAEqB,GAAE1B,EAAEM,EAAEC,EAAE,EAAEJ,CAAC,EAAE,GAAGA,EAAE,KAAK,CAAC,MAAMD,EAAE,CAAC,CAACF,EAAEM,CAAC,EAAE,CAACN,EAAEO,EAAED,CAAC,EAAE,CAACN,EAAEO,EAAED,EAAE,CAAC,EAAE,CAACN,EAAEM,EAAE,CAAC,CAAC,EAAYH,EAAE,YAAZ,QAAsB,EAAE,KAAKsC,GAAE,CAACvC,CAAC,EAAEC,CAAC,CAAC,EAAE,EAAE,KAAKuC,EAAE,CAACxC,CAAC,EAAEC,CAAC,CAAC,CAAC,CAAC,OAAOA,EAAE,SAASmD,GAAI,EAAE,KAAKjD,CAAC,EAAE,KAAK,GAAG,YAAY,EAAEF,CAAC,CAAC,CAAC,QAAQH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAA,EAAGE,EAAEuB,GAAErB,EAAE,EAAEJ,CAAC,EAAEK,EAAEqB,GAAE7B,EAAEM,EAAEH,EAAEE,CAAC,EAAE,GAAGF,EAAE,KAAK,GAAaA,EAAE,YAAZ,QAAsB,CAAC,MAAMI,EAAEsB,GAAE7B,EAAEM,EAAEH,EAAEE,CAAC,EAAE,MAAME,EAAE,KAAK,WAAW,EAAE,KAAKA,CAAC,CAAC,MAAM,EAAE,KAAKmC,EAAE,CAAClC,EAAE,eAAe,EAAEL,CAAC,CAAC,EAAE,OAAOA,EAAE,SAASmD,GAAI,EAAE,KAAK9C,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,EAAEL,CAAC,CAAC,CAAC,OAAOH,EAAEM,EAAEC,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,QAAQP,EAAEM,EAAEC,EAAEA,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC,CAAC,WAAWP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,GAAGD,CAAC,EAAE,OAAO,KAAK,GAAG,aAAa,CAACmB,EAAEzB,EAAE,GAAGO,CAAC,CAAC,EAAEA,CAAC,CAAC,CAAC,IAAIP,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAE,GAAGE,EAAE,CAAC,MAAMG,EAAE,KAAK,GAAGH,CAAC,EAAE,EAAE,CAAA,EAAGK,EAAEoB,GAAE9B,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAE,GAAGK,CAAC,EAAE,GAAG,GAAGA,EAAE,KAAK,GAAaA,EAAE,YAAZ,QAAsB,CAAC,MAAMJ,EAAE,OAAO,OAAO,CAAA,EAAGI,CAAC,EAAEJ,EAAE,mBAAmB,GAAG,MAAMC,EAAEyB,GAAE9B,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,GAAG,GAAGC,CAAC,EAAEC,EAAE,KAAK,WAAW,EAAE,KAAKA,CAAC,CAAC,MAAM,EAAE,MAAK,SAASL,EAAEM,EAAEC,EAAEN,EAAEC,EAAEC,EAAEC,EAAE,CAAC,MAAMC,EAAEL,EAAEQ,EAAEF,EAAE,IAAIG,EAAE,KAAK,IAAIF,EAAE,CAAC,EAAEG,EAAE,KAAK,IAAIT,EAAE,CAAC,EAAEQ,GAAGsB,EAAE,IAAItB,EAAEL,CAAC,EAAEM,GAAGqB,EAAE,IAAIrB,EAAEN,CAAC,EAAE,IAAIO,EAAET,EAAEU,EAAET,EAAE,KAAKQ,EAAE,GAAGA,GAAG,EAAE,KAAK,GAAGC,GAAG,EAAE,KAAK,GAAGA,EAAED,EAAE,EAAE,KAAK,KAAKA,EAAE,EAAEC,EAAE,EAAE,KAAK,IAAI,MAAMC,GAAGD,EAAED,GAAGP,EAAE,eAAeU,EAAE,CAAA,EAAG,QAAQd,EAAEW,EAAEX,GAAGY,EAAEZ,GAAGa,EAAEC,EAAE,KAAK,CAACT,EAAEI,EAAE,KAAK,IAAIT,CAAC,EAAEQ,EAAEE,EAAE,KAAK,IAAIV,CAAC,CAAC,CAAC,EAAE,OAAOc,EAAE,KAAK,CAACT,EAAEI,EAAE,KAAK,IAAIG,CAAC,EAAEJ,EAAEE,EAAE,KAAK,IAAIE,CAAC,CAAC,CAAC,EAAEE,EAAE,KAAK,CAACT,EAAEG,CAAC,CAAC,EAAEkC,EAAE,CAAC5B,CAAC,EAAEV,CAAC,CAAC,GAAEJ,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAEK,CAAC,CAAC,EAAE,OAAOA,EAAE,SAAS8C,GAAI,EAAE,KAAK5C,CAAC,EAAE,KAAK,GAAG,MAAM,EAAEF,CAAC,CAAC,CAAC,MAAMR,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,GAAGD,CAAC,EAAE,EAAE,CAAA,EAAG,EAAEqB,GAAE3B,EAAEO,CAAC,EAAE,GAAGA,EAAE,MAAMA,EAAE,OAAO+C,EAAG,GAAa/C,EAAE,YAAZ,QAAsB,CAAC,MAAMD,EAAEqB,GAAE3B,EAAE,OAAO,OAAO,OAAO,OAAO,CAAA,EAAGO,CAAC,EAAE,CAAC,mBAAmB,GAAG,UAAUA,EAAE,UAAUA,EAAE,UAAUA,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,WAAW,IAAI,KAAK,aAAaD,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAMA,EAAE,CAAA,EAAGJ,EAAEF,EAAE,GAAGE,EAAE,OAAO,CAAC,MAAMF,EAAY,OAAOE,EAAE,CAAC,EAAE,CAAC,GAAvB,SAAyB,CAACA,CAAC,EAAEA,EAAE,UAAUD,KAAKD,EAAEC,EAAE,OAAO,EAAEK,EAAE,KAAK,GAAGL,CAAC,EAAMA,EAAE,SAAN,EAAaK,EAAE,KAAK,GAAG+C,GAAEP,GAAE,CAAC7C,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAEM,EAAE,WAAW,CAAC,CAAC,EAAED,EAAE,KAAK,GAAG+C,GAAEP,GAAE7C,CAAC,EAAE,IAAI,EAAEM,EAAE,WAAW,CAAC,CAAC,CAAC,CAACD,EAAE,QAAQ,EAAE,KAAKoC,EAAE,CAACpC,CAAC,EAAEC,CAAC,CAAC,CAAC,CAAC,OAAOA,EAAE,SAAS+C,GAAI,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE/C,CAAC,CAAC,CAAC,QAAQP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,GAAGD,CAAC,EAAE,EAAE,CAAA,EAAG,EAAEmB,EAAEzB,EAAE,GAAGO,CAAC,EAAE,OAAOA,EAAE,OAAiBA,EAAE,YAAZ,QAAsB,EAAE,KAAKkC,GAAE,CAACzC,CAAC,EAAEO,CAAC,CAAC,EAAE,EAAE,KAAKmC,EAAE,CAAC1C,CAAC,EAAEO,CAAC,CAAC,GAAGA,EAAE,SAAS+C,GAAI,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,UAAU,EAAE/C,CAAC,CAAC,CAAC,KAAKP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,GAAGD,CAAC,EAAE,EAAE,CAAA,EAAG,GAAG,CAACN,EAAE,OAAO,KAAK,GAAG,OAAO,EAAEO,CAAC,EAAEP,GAAGA,GAAG,IAAI,QAAQ,MAAM,GAAG,EAAE,QAAQ,SAAS,GAAG,EAAE,QAAQ,UAAU,GAAG,EAAE,MAAM,EAAEO,EAAE,MAAsBA,EAAE,OAAlB,eAAwBA,EAAE,OAAO+C,EAAGnD,EAAEI,EAAE,SAAS+C,EAAG,EAAE,CAAC,EAAE/C,EAAE,gBAAgBA,EAAE,eAAe,GAAGF,GAAE,SAASL,EAAEM,EAAEC,EAAE,CAAC,MAAMN,EAAEmB,GAAED,GAAED,GAAElB,CAAC,CAAC,CAAC,EAAEE,EAAE,CAAA,EAAG,IAAIC,EAAE,CAAA,EAAGC,EAAE,CAAC,EAAE,CAAC,EAAEC,EAAE,CAAA,EAAG,MAAMG,EAAE,IAAI,CAACH,EAAE,QAAQ,GAAGF,EAAE,KAAK,GAAGkD,GAAEhD,EAAEC,CAAC,CAAC,EAAED,EAAE,CAAA,CAAE,EAAEI,EAAE,IAAI,CAACD,EAAC,EAAGL,EAAE,SAASD,EAAE,KAAKC,CAAC,EAAEA,EAAE,CAAA,EAAG,EAAE,SAAS,CAAC,IAAIH,EAAE,KAAKM,CAAC,IAAIL,EAAE,OAAOD,GAAG,IAAI,IAAIS,EAAC,EAAGL,EAAE,CAACE,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAEH,EAAE,KAAKC,CAAC,EAAE,MAAM,IAAI,IAAII,EAAC,EAAGL,EAAE,KAAK,CAACG,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,GAAG,CAACD,EAAE,OAAO,CAAC,MAAML,EAAEG,EAAE,OAAOA,EAAEA,EAAE,OAAO,CAAC,EAAEC,EAAEC,EAAE,KAAK,CAACL,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,CAACK,EAAE,KAAK,CAACC,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAED,EAAE,KAAK,CAACC,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAED,EAAE,KAAK,CAACC,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAIE,IAAIL,EAAE,KAAK,CAACC,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAGK,EAAC,EAAG,CAACF,EAAE,OAAOL,EAAE,MAAMQ,EAAE,CAAA,EAAG,UAAUV,KAAKE,EAAE,CAAC,MAAMI,EAAE6C,GAAEnD,EAAEO,CAAC,EAAED,EAAE,QAAQI,EAAE,KAAKJ,CAAC,CAAC,CAAC,OAAOI,CAAC,GAAEV,EAAE,EAAE,EAAE,EAAE,GAAGO,EAAE,gBAAgB,IAAI,EAAEA,EAAE,WAAW,CAAC,EAAEC,EAAE+B,GAAEvC,EAAEO,CAAC,EAAE,GAAG,EAAE,GAAaA,EAAE,YAAZ,QAAsB,GAAOF,EAAE,SAAN,EAAa,CAAC,MAAMC,EAAEiC,GAAEvC,EAAE,OAAO,OAAO,OAAO,OAAO,CAAA,EAAGO,CAAC,EAAE,CAAC,mBAAmB,GAAG,UAAUA,EAAE,UAAUA,EAAE,UAAUA,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,WAAW,IAAI,KAAK,aAAaD,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAKmC,GAAEpC,EAAEE,CAAC,CAAC,OAAO,EAAE,KAAKmC,EAAErC,EAAEE,CAAC,CAAC,EAAE,OAAOJ,IAAI,EAAEE,EAAE,SAASL,GAAG,CAAC,EAAE,KAAKyB,EAAEzB,EAAE,GAAGO,CAAC,CAAC,CAAC,EAAC,EAAG,EAAE,KAAKC,CAAC,GAAG,KAAK,GAAG,OAAO,EAAED,CAAC,CAAC,CAAC,UAAUP,EAAEM,EAAE,CAAC,IAAIC,EAAE,GAAG,UAAU,KAAKP,EAAE,IAAI,CAAC,MAAMA,EAAY,OAAOM,GAAjB,UAAoBA,GAAG,EAAE,EAAE,KAAK,KAAKN,GAAG,CAACA,EAAE,QAAQM,CAAC,EAAC,EAAG,EAAE,KAAK,OAAO,EAAE,GAAE,CAAE,IAAI,OAAOC,GAAG,IAAIP,EAAE,CAAC,CAAC,IAAIA,EAAE,CAAC,CAAC,IAAI,MAAM,IAAI,WAAWO,GAAG,IAAIP,EAAE,CAAC,CAAC,IAAIA,EAAE,CAAC,CAAC,KAAKA,EAAE,CAAC,CAAC,IAAIA,EAAE,CAAC,CAAC,KAAKA,EAAE,CAAC,CAAC,IAAIA,EAAE,CAAC,CAAC,IAAI,MAAM,IAAI,SAASO,GAAG,IAAIP,EAAE,CAAC,CAAC,IAAIA,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAOO,EAAE,KAAI,CAAE,CAAC,QAAQP,EAAE,CAAC,MAAMM,EAAEN,EAAE,MAAM,CAAA,EAAGO,EAAEP,EAAE,SAAS,KAAK,eAAe,EAAE,CAAA,EAAG,UAAUA,KAAKM,EAAE,CAAC,IAAIA,EAAE,KAAK,OAAON,EAAE,KAAI,CAAE,IAAI,OAAOM,EAAE,CAAC,EAAE,KAAK,UAAUN,CAAC,EAAE,OAAOO,EAAE,OAAO,YAAYA,EAAE,YAAY,KAAK+C,CAAE,EAAE,MAAM,IAAI,WAAWhD,EAAE,CAAC,EAAE,KAAK,UAAUN,CAAC,EAAE,OAAOsD,EAAG,YAAY,EAAE,KAAK/C,EAAE,MAAM+C,CAAE,EAAE,MAAM,IAAI,aAAahD,EAAE,KAAK,WAAWN,EAAEO,CAAC,CAAC,CAACD,GAAG,EAAE,KAAKA,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,WAAWN,EAAEM,EAAE,CAAC,IAAIC,EAAED,EAAE,WAAW,OAAOC,EAAE,IAAIA,EAAED,EAAE,YAAY,GAAG,CAAC,EAAE,KAAK,UAAUN,CAAC,EAAE,OAAOM,EAAE,MAAMgD,EAAG,YAAY/C,EAAE,KAAK+C,CAAE,CAAC,CAAC,aAAatD,EAAE,CAAC,OAAOA,EAAE,QAAQ,CAACA,EAAEM,IAAQA,IAAJ,GAAgBN,EAAE,KAAX,OAAa,CAAE,CAAC,CAAC,MAAMwD,EAAE,CAAC,YAAYxD,EAAEM,EAAE,CAAC,KAAK,OAAON,EAAE,KAAK,IAAI,KAAK,OAAO,WAAW,IAAI,EAAE,KAAK,IAAI,IAAIuD,EAAGjD,CAAC,CAAC,CAAC,KAAKN,EAAE,CAAC,MAAMM,EAAEN,EAAE,MAAM,CAAA,EAAGO,EAAEP,EAAE,SAAS,KAAK,kBAAiB,EAAG,EAAE,KAAK,IAAI,EAAEA,EAAE,QAAQ,wBAAwB,UAAUG,KAAKG,EAAE,OAAOH,EAAE,KAAI,CAAE,IAAI,OAAO,EAAE,KAAI,EAAG,EAAE,YAAqBI,EAAE,SAAX,OAAkB,cAAcA,EAAE,OAAO,EAAE,UAAUA,EAAE,YAAYA,EAAE,gBAAgB,EAAE,YAAYA,EAAE,cAAc,EAAEA,EAAE,uBAAuB,EAAE,eAAeA,EAAE,sBAAsB,KAAK,eAAe,EAAEJ,EAAE,CAAC,EAAE,EAAE,QAAO,EAAG,MAAM,IAAI,WAAW,CAAC,EAAE,KAAI,EAAG,EAAE,UAAUI,EAAE,MAAM,GAAG,MAAMD,EAAYN,EAAE,QAAZ,SAA+BA,EAAE,QAAd,WAA8BA,EAAE,QAAX,OAAiB,UAAU,UAAU,KAAK,eAAe,EAAEG,EAAE,EAAEG,CAAC,EAAE,EAAE,QAAO,EAAG,KAAK,CAAC,IAAI,aAAa,KAAK,WAAW,EAAEH,EAAEI,CAAC,CAAC,CAAC,CAAC,WAAWP,EAAEM,EAAEC,EAAE,CAAC,IAAI,EAAEA,EAAE,WAAW,EAAE,IAAI,EAAEA,EAAE,YAAY,GAAGP,EAAE,KAAI,EAAGO,EAAE,cAAcP,EAAE,YAAYO,EAAE,YAAY,EAAEA,EAAE,qBAAqBP,EAAE,eAAeO,EAAE,oBAAoBP,EAAE,YAAYO,EAAE,MAAM,GAAGP,EAAE,UAAU,EAAE,KAAK,eAAeA,EAAEM,EAAEC,EAAE,uBAAuB,EAAEP,EAAE,QAAO,CAAE,CAAC,eAAeA,EAAEM,EAAEC,EAAE,EAAE,UAAU,CAACP,EAAE,UAAS,EAAG,UAAUC,KAAKK,EAAE,IAAI,CAAC,MAAMA,EAAY,OAAOC,GAAjB,UAAoBA,GAAG,EAAEN,EAAE,KAAK,KAAKD,GAAG,CAACA,EAAE,QAAQO,CAAC,EAAC,EAAGN,EAAE,KAAK,OAAOA,EAAE,GAAE,CAAE,IAAI,OAAOD,EAAE,OAAOM,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,MAAM,IAAI,WAAWN,EAAE,cAAcM,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,EAAE,MAAM,IAAI,SAASN,EAAE,OAAOM,EAAE,CAAC,EAAEA,EAAE,CAAC,CAAC,CAAC,CAAC,CAAcA,EAAE,OAAf,WAAoBN,EAAE,KAAK,CAAC,EAAEA,EAAE,OAAM,CAAE,CAAC,IAAI,WAAW,CAAC,OAAO,KAAK,GAAG,CAAC,mBAAmB,CAAC,OAAO,KAAK,IAAI,cAAc,CAAC,KAAKA,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,KAAKH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,EAAEA,CAAC,CAAC,UAAUH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,UAAUH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,EAAEA,CAAC,CAAC,QAAQH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,QAAQH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,EAAEA,CAAC,CAAC,OAAOH,EAAEM,EAAEC,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,IAAI,OAAOP,EAAEM,EAAEC,EAAE,CAAC,EAAE,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,WAAWP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,WAAWP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,EAAEA,CAAC,CAAC,QAAQP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,QAAQP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,EAAEA,CAAC,CAAC,IAAIP,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAE,GAAGE,EAAE,CAAC,MAAMG,EAAE,KAAK,IAAI,IAAIR,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAEE,CAAC,EAAE,OAAO,KAAK,KAAKG,CAAC,EAAEA,CAAC,CAAC,MAAMR,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,MAAMP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,EAAEA,CAAC,CAAC,KAAKP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,KAAKP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,EAAEA,CAAC,CAAC,CAAC,MAAMkD,EAAG,6BAA6B,MAAMC,EAAE,CAAC,YAAY1D,EAAEM,EAAE,CAAC,KAAK,IAAIN,EAAE,KAAK,IAAI,IAAIuD,EAAGjD,CAAC,CAAC,CAAC,KAAKN,EAAE,CAAC,MAAMM,EAAEN,EAAE,MAAM,CAAA,EAAGO,EAAEP,EAAE,SAAS,KAAK,kBAAiB,EAAG,EAAE,KAAK,IAAI,eAAe,OAAO,SAAS,EAAE,EAAE,gBAAgByD,EAAG,GAAG,EAAEtD,EAAEH,EAAE,QAAQ,wBAAwB,UAAU,KAAKM,EAAE,CAAC,IAAIA,EAAE,KAAK,OAAO,EAAE,KAAI,CAAE,IAAI,OAAOA,EAAE,EAAE,gBAAgBmD,EAAG,MAAM,EAAEnD,EAAE,aAAa,IAAI,KAAK,UAAU,EAAEH,CAAC,CAAC,EAAEG,EAAE,aAAa,SAASC,EAAE,MAAM,EAAED,EAAE,aAAa,eAAeC,EAAE,YAAY,EAAE,EAAED,EAAE,aAAa,OAAO,MAAM,EAAEC,EAAE,gBAAgBD,EAAE,aAAa,mBAAmBC,EAAE,eAAe,KAAK,GAAG,EAAE,KAAI,CAAE,EAAEA,EAAE,sBAAsBD,EAAE,aAAa,oBAAoB,GAAGC,EAAE,oBAAoB,EAAE,EAAE,MAAM,IAAI,WAAWD,EAAE,EAAE,gBAAgBmD,EAAG,MAAM,EAAEnD,EAAE,aAAa,IAAI,KAAK,UAAU,EAAEH,CAAC,CAAC,EAAEG,EAAE,aAAa,SAAS,MAAM,EAAEA,EAAE,aAAa,eAAe,GAAG,EAAEA,EAAE,aAAa,OAAOC,EAAE,MAAM,EAAE,EAAYP,EAAE,QAAZ,SAA+BA,EAAE,QAAd,WAAqBM,EAAE,aAAa,YAAY,SAAS,EAAE,MAAM,IAAI,aAAaA,EAAE,KAAK,WAAW,EAAE,EAAEC,CAAC,CAAC,CAACD,GAAG,EAAE,YAAYA,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,WAAWN,EAAEM,EAAEC,EAAE,CAAC,IAAI,EAAEA,EAAE,WAAW,EAAE,IAAI,EAAEA,EAAE,YAAY,GAAG,MAAM,EAAEP,EAAE,gBAAgByD,EAAG,MAAM,EAAE,OAAO,EAAE,aAAa,IAAI,KAAK,UAAUnD,EAAEC,EAAE,uBAAuB,CAAC,EAAE,EAAE,aAAa,SAASA,EAAE,MAAM,EAAE,EAAE,EAAE,aAAa,eAAe,EAAE,EAAE,EAAE,EAAE,aAAa,OAAO,MAAM,EAAEA,EAAE,cAAc,EAAE,aAAa,mBAAmBA,EAAE,aAAa,KAAK,GAAG,EAAE,KAAI,CAAE,EAAEA,EAAE,oBAAoB,EAAE,aAAa,oBAAoB,GAAGA,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,KAAK,GAAG,CAAC,mBAAmB,CAAC,OAAO,KAAK,IAAI,cAAc,CAAC,UAAUP,EAAEM,EAAE,CAAC,OAAO,KAAK,IAAI,UAAUN,EAAEM,CAAC,CAAC,CAAC,KAAKN,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,KAAKH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,CAAC,CAAC,UAAUH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,UAAUH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,CAAC,CAAC,QAAQH,EAAEM,EAAEC,EAAE,EAAE,EAAE,CAAC,MAAMJ,EAAE,KAAK,IAAI,QAAQH,EAAEM,EAAEC,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,KAAKJ,CAAC,CAAC,CAAC,OAAOH,EAAEM,EAAEC,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,IAAI,OAAOP,EAAEM,EAAEC,EAAE,CAAC,EAAE,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,WAAWP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,WAAWP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,CAAC,CAAC,QAAQP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,QAAQP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,CAAC,CAAC,IAAIP,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAE,GAAGE,EAAE,CAAC,MAAMG,EAAE,KAAK,IAAI,IAAIR,EAAEM,EAAEC,EAAE,EAAE,EAAEJ,EAAE,EAAEE,CAAC,EAAE,OAAO,KAAK,KAAKG,CAAC,CAAC,CAAC,MAAMR,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,MAAMP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,CAAC,CAAC,KAAKP,EAAEM,EAAE,CAAC,MAAMC,EAAE,KAAK,IAAI,KAAKP,EAAEM,CAAC,EAAE,OAAO,KAAK,KAAKC,CAAC,CAAC,CAAC,CAAI,IAACoD,GAAG,CAAC,OAAO,CAAC3D,EAAE,IAAI,IAAIwD,GAAGxD,EAAE,CAAC,EAAE,IAAI,CAACA,EAAE,IAAI,IAAI0D,GAAG1D,EAAE,CAAC,EAAE,UAAUA,GAAG,IAAIuD,EAAGvD,CAAC,EAAE,QAAQ,IAAIuD,EAAG,QAAO,CAAE","x_google_ignoreList":[0]}