@powerlines/plugin-automd 0.1.248 → 0.1.249

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-automd",
3
- "version": "0.1.248",
3
+ "version": "0.1.249",
4
4
  "type": "module",
5
5
  "description": "A Powerlines plugin to maintain a project's markdown files using AutoMD generators.",
6
6
  "repository": {
@@ -112,13 +112,13 @@
112
112
  "c12": "^3.3.3",
113
113
  "defu": "^6.1.4",
114
114
  "markdown-toc": "^1.2.0",
115
- "powerlines": "^0.38.15"
115
+ "powerlines": "^0.38.16"
116
116
  },
117
117
  "devDependencies": {
118
- "@powerlines/plugin-plugin": "^0.12.199",
118
+ "@powerlines/plugin-plugin": "^0.12.200",
119
119
  "@types/node": "^24.10.9",
120
- "automd": "^0.4.2"
120
+ "automd": "^0.4.3"
121
121
  },
122
122
  "publishConfig": { "access": "public" },
123
- "gitHead": "3137c5a27017b9c9a371a0e8997014f994edb1ee"
123
+ "gitHead": "ae1829e47caf25992a6b047398bfebf06420e325"
124
124
  }
@@ -1,179 +0,0 @@
1
- import { o as qn, r as br } from "./node-Du1vi9nA.mjs";
2
- import "node:fs";
3
- import "node:url";
4
- import "node:path";
5
- import "node:util";
6
- import "node:http";
7
- import "node:https";
8
- import "node:zlib";
9
- import "node:stream";
10
- import "node:buffer";
11
- import "node:net";
12
-
13
- //#region ../../node_modules/.pnpm/node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/chunks/multipart-parser.mjs
14
- var B = Object.defineProperty;
15
- var E = (u, a) => B(u, "name", {
16
- value: a,
17
- configurable: !0
18
- });
19
- let D = 0;
20
- const t = {
21
- START_BOUNDARY: D++,
22
- HEADER_FIELD_START: D++,
23
- HEADER_FIELD: D++,
24
- HEADER_VALUE_START: D++,
25
- HEADER_VALUE: D++,
26
- HEADER_VALUE_ALMOST_DONE: D++,
27
- HEADERS_ALMOST_DONE: D++,
28
- PART_DATA_START: D++,
29
- PART_DATA: D++,
30
- END: D++
31
- };
32
- let w = 1;
33
- const R = {
34
- PART_BOUNDARY: w,
35
- LAST_BOUNDARY: w *= 2
36
- }, g = 10, N = 13, x = 32, P = 45, C = 58, I = 97, M = 122, $ = E((u) => u | 32, "lower"), m = E(() => {}, "noop"), F = class F$1 {
37
- constructor(a) {
38
- this.index = 0, this.flags = 0, this.onHeaderEnd = m, this.onHeaderField = m, this.onHeadersEnd = m, this.onHeaderValue = m, this.onPartBegin = m, this.onPartData = m, this.onPartEnd = m, this.boundaryChars = {}, a = `\r
39
- --` + a;
40
- const n = new Uint8Array(a.length);
41
- for (let r = 0; r < a.length; r++) n[r] = a.charCodeAt(r), this.boundaryChars[n[r]] = !0;
42
- this.boundary = n, this.lookbehind = new Uint8Array(this.boundary.length + 8), this.state = t.START_BOUNDARY;
43
- }
44
- write(a) {
45
- let n = 0;
46
- const r = a.length;
47
- let d = this.index, { lookbehind: l, boundary: c, boundaryChars: p, index: e, state: i, flags: A } = this;
48
- const H = this.boundary.length, O = H - 1, y = a.length;
49
- let o, L;
50
- const f = E((h) => {
51
- this[h + "Mark"] = n;
52
- }, "mark"), s = E((h) => {
53
- delete this[h + "Mark"];
54
- }, "clear"), T = E((h, S, _, U) => {
55
- (S === void 0 || S !== _) && this[h](U && U.subarray(S, _));
56
- }, "callback"), b = E((h, S) => {
57
- const _ = h + "Mark";
58
- _ in this && (S ? (T(h, this[_], n, a), delete this[_]) : (T(h, this[_], a.length, a), this[_] = 0));
59
- }, "dataCallback");
60
- for (n = 0; n < r; n++) switch (o = a[n], i) {
61
- case t.START_BOUNDARY:
62
- if (e === c.length - 2) {
63
- if (o === P) A |= R.LAST_BOUNDARY;
64
- else if (o !== N) return;
65
- e++;
66
- break;
67
- } else if (e - 1 === c.length - 2) {
68
- if (A & R.LAST_BOUNDARY && o === P) i = t.END, A = 0;
69
- else if (!(A & R.LAST_BOUNDARY) && o === g) e = 0, T("onPartBegin"), i = t.HEADER_FIELD_START;
70
- else return;
71
- break;
72
- }
73
- o !== c[e + 2] && (e = -2), o === c[e + 2] && e++;
74
- break;
75
- case t.HEADER_FIELD_START: i = t.HEADER_FIELD, f("onHeaderField"), e = 0;
76
- case t.HEADER_FIELD:
77
- if (o === N) {
78
- s("onHeaderField"), i = t.HEADERS_ALMOST_DONE;
79
- break;
80
- }
81
- if (e++, o === P) break;
82
- if (o === C) {
83
- if (e === 1) return;
84
- b("onHeaderField", !0), i = t.HEADER_VALUE_START;
85
- break;
86
- }
87
- if (L = $(o), L < I || L > M) return;
88
- break;
89
- case t.HEADER_VALUE_START:
90
- if (o === x) break;
91
- f("onHeaderValue"), i = t.HEADER_VALUE;
92
- case t.HEADER_VALUE:
93
- o === N && (b("onHeaderValue", !0), T("onHeaderEnd"), i = t.HEADER_VALUE_ALMOST_DONE);
94
- break;
95
- case t.HEADER_VALUE_ALMOST_DONE:
96
- if (o !== g) return;
97
- i = t.HEADER_FIELD_START;
98
- break;
99
- case t.HEADERS_ALMOST_DONE:
100
- if (o !== g) return;
101
- T("onHeadersEnd"), i = t.PART_DATA_START;
102
- break;
103
- case t.PART_DATA_START: i = t.PART_DATA, f("onPartData");
104
- case t.PART_DATA:
105
- if (d = e, e === 0) {
106
- for (n += O; n < y && !(a[n] in p);) n += H;
107
- n -= O, o = a[n];
108
- }
109
- if (e < c.length) c[e] === o ? (e === 0 && b("onPartData", !0), e++) : e = 0;
110
- else if (e === c.length) e++, o === N ? A |= R.PART_BOUNDARY : o === P ? A |= R.LAST_BOUNDARY : e = 0;
111
- else if (e - 1 === c.length) if (A & R.PART_BOUNDARY) {
112
- if (e = 0, o === g) {
113
- A &= ~R.PART_BOUNDARY, T("onPartEnd"), T("onPartBegin"), i = t.HEADER_FIELD_START;
114
- break;
115
- }
116
- } else A & R.LAST_BOUNDARY && o === P ? (T("onPartEnd"), i = t.END, A = 0) : e = 0;
117
- if (e > 0) l[e - 1] = o;
118
- else if (d > 0) {
119
- const h = new Uint8Array(l.buffer, l.byteOffset, l.byteLength);
120
- T("onPartData", 0, d, h), d = 0, f("onPartData"), n--;
121
- }
122
- break;
123
- case t.END: break;
124
- default: throw new Error(`Unexpected state entered: ${i}`);
125
- }
126
- b("onHeaderField"), b("onHeaderValue"), b("onPartData"), this.index = e, this.state = i, this.flags = A;
127
- }
128
- end() {
129
- if (this.state === t.HEADER_FIELD_START && this.index === 0 || this.state === t.PART_DATA && this.index === this.boundary.length) this.onPartEnd();
130
- else if (this.state !== t.END) throw new Error("MultipartParser.end(): stream ended unexpectedly");
131
- }
132
- };
133
- E(F, "MultipartParser");
134
- let k = F;
135
- function v(u) {
136
- const a = u.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);
137
- if (!a) return;
138
- const n = a[2] || a[3] || "";
139
- let r = n.slice(n.lastIndexOf("\\") + 1);
140
- return r = r.replace(/%22/g, "\""), r = r.replace(/&#(\d{4});/g, (d, l) => String.fromCharCode(l)), r;
141
- }
142
- E(v, "_fileName");
143
- async function Z(u, a) {
144
- if (!/multipart/i.test(a)) throw new TypeError("Failed to fetch");
145
- const n = a.match(/boundary=(?:"([^"]+)"|([^;]+))/i);
146
- if (!n) throw new TypeError("no or bad content-type header, no multipart boundary");
147
- const r = new k(n[1] || n[2]);
148
- let d, l, c, p, e, i;
149
- const A = [], H = new br(), O = E((s) => {
150
- c += f.decode(s, { stream: !0 });
151
- }, "onPartData"), y = E((s) => {
152
- A.push(s);
153
- }, "appendToFile"), o = E(() => {
154
- const s = new qn(A, i, { type: e });
155
- H.append(p, s);
156
- }, "appendFileToFormData"), L = E(() => {
157
- H.append(p, c);
158
- }, "appendEntryToFormData"), f = new TextDecoder("utf-8");
159
- f.decode(), r.onPartBegin = function() {
160
- r.onPartData = O, r.onPartEnd = L, d = "", l = "", c = "", p = "", e = "", i = null, A.length = 0;
161
- }, r.onHeaderField = function(s) {
162
- d += f.decode(s, { stream: !0 });
163
- }, r.onHeaderValue = function(s) {
164
- l += f.decode(s, { stream: !0 });
165
- }, r.onHeaderEnd = function() {
166
- if (l += f.decode(), d = d.toLowerCase(), d === "content-disposition") {
167
- const s = l.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);
168
- s && (p = s[2] || s[3] || ""), i = v(l), i && (r.onPartData = y, r.onPartEnd = o);
169
- } else d === "content-type" && (e = l);
170
- l = "", d = "";
171
- };
172
- for await (const s of u) r.write(s);
173
- return r.end(), H;
174
- }
175
- E(Z, "toFormData");
176
-
177
- //#endregion
178
- export { Z as toFormData };
179
- //# sourceMappingURL=multipart-parser-CglOohoL.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multipart-parser-CglOohoL.mjs","names":["F","V","Y"],"sources":["../../../node_modules/.pnpm/node-fetch-native@1.6.7/node_modules/node-fetch-native/dist/chunks/multipart-parser.mjs"],"sourcesContent":["var B=Object.defineProperty;var E=(u,a)=>B(u,\"name\",{value:a,configurable:!0});import{FormData as V,File as Y}from\"../node.mjs\";import\"node:http\";import\"node:https\";import\"node:zlib\";import\"node:stream\";import\"node:buffer\";import\"node:util\";import\"../shared/node-fetch-native.DfbY2q-x.mjs\";import\"node:url\";import\"node:net\";import\"node:fs\";import\"node:path\";let D=0;const t={START_BOUNDARY:D++,HEADER_FIELD_START:D++,HEADER_FIELD:D++,HEADER_VALUE_START:D++,HEADER_VALUE:D++,HEADER_VALUE_ALMOST_DONE:D++,HEADERS_ALMOST_DONE:D++,PART_DATA_START:D++,PART_DATA:D++,END:D++};let w=1;const R={PART_BOUNDARY:w,LAST_BOUNDARY:w*=2},g=10,N=13,x=32,P=45,C=58,I=97,M=122,$=E(u=>u|32,\"lower\"),m=E(()=>{},\"noop\"),F=class F{constructor(a){this.index=0,this.flags=0,this.onHeaderEnd=m,this.onHeaderField=m,this.onHeadersEnd=m,this.onHeaderValue=m,this.onPartBegin=m,this.onPartData=m,this.onPartEnd=m,this.boundaryChars={},a=`\\r\n--`+a;const n=new Uint8Array(a.length);for(let r=0;r<a.length;r++)n[r]=a.charCodeAt(r),this.boundaryChars[n[r]]=!0;this.boundary=n,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=t.START_BOUNDARY}write(a){let n=0;const r=a.length;let d=this.index,{lookbehind:l,boundary:c,boundaryChars:p,index:e,state:i,flags:A}=this;const H=this.boundary.length,O=H-1,y=a.length;let o,L;const f=E(h=>{this[h+\"Mark\"]=n},\"mark\"),s=E(h=>{delete this[h+\"Mark\"]},\"clear\"),T=E((h,S,_,U)=>{(S===void 0||S!==_)&&this[h](U&&U.subarray(S,_))},\"callback\"),b=E((h,S)=>{const _=h+\"Mark\";_ in this&&(S?(T(h,this[_],n,a),delete this[_]):(T(h,this[_],a.length,a),this[_]=0))},\"dataCallback\");for(n=0;n<r;n++)switch(o=a[n],i){case t.START_BOUNDARY:if(e===c.length-2){if(o===P)A|=R.LAST_BOUNDARY;else if(o!==N)return;e++;break}else if(e-1===c.length-2){if(A&R.LAST_BOUNDARY&&o===P)i=t.END,A=0;else if(!(A&R.LAST_BOUNDARY)&&o===g)e=0,T(\"onPartBegin\"),i=t.HEADER_FIELD_START;else return;break}o!==c[e+2]&&(e=-2),o===c[e+2]&&e++;break;case t.HEADER_FIELD_START:i=t.HEADER_FIELD,f(\"onHeaderField\"),e=0;case t.HEADER_FIELD:if(o===N){s(\"onHeaderField\"),i=t.HEADERS_ALMOST_DONE;break}if(e++,o===P)break;if(o===C){if(e===1)return;b(\"onHeaderField\",!0),i=t.HEADER_VALUE_START;break}if(L=$(o),L<I||L>M)return;break;case t.HEADER_VALUE_START:if(o===x)break;f(\"onHeaderValue\"),i=t.HEADER_VALUE;case t.HEADER_VALUE:o===N&&(b(\"onHeaderValue\",!0),T(\"onHeaderEnd\"),i=t.HEADER_VALUE_ALMOST_DONE);break;case t.HEADER_VALUE_ALMOST_DONE:if(o!==g)return;i=t.HEADER_FIELD_START;break;case t.HEADERS_ALMOST_DONE:if(o!==g)return;T(\"onHeadersEnd\"),i=t.PART_DATA_START;break;case t.PART_DATA_START:i=t.PART_DATA,f(\"onPartData\");case t.PART_DATA:if(d=e,e===0){for(n+=O;n<y&&!(a[n]in p);)n+=H;n-=O,o=a[n]}if(e<c.length)c[e]===o?(e===0&&b(\"onPartData\",!0),e++):e=0;else if(e===c.length)e++,o===N?A|=R.PART_BOUNDARY:o===P?A|=R.LAST_BOUNDARY:e=0;else if(e-1===c.length)if(A&R.PART_BOUNDARY){if(e=0,o===g){A&=~R.PART_BOUNDARY,T(\"onPartEnd\"),T(\"onPartBegin\"),i=t.HEADER_FIELD_START;break}}else A&R.LAST_BOUNDARY&&o===P?(T(\"onPartEnd\"),i=t.END,A=0):e=0;if(e>0)l[e-1]=o;else if(d>0){const h=new Uint8Array(l.buffer,l.byteOffset,l.byteLength);T(\"onPartData\",0,d,h),d=0,f(\"onPartData\"),n--}break;case t.END:break;default:throw new Error(`Unexpected state entered: ${i}`)}b(\"onHeaderField\"),b(\"onHeaderValue\"),b(\"onPartData\"),this.index=e,this.state=i,this.flags=A}end(){if(this.state===t.HEADER_FIELD_START&&this.index===0||this.state===t.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==t.END)throw new Error(\"MultipartParser.end(): stream ended unexpectedly\")}};E(F,\"MultipartParser\");let k=F;function v(u){const a=u.match(/\\bfilename=(\"(.*?)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))($|;\\s)/i);if(!a)return;const n=a[2]||a[3]||\"\";let r=n.slice(n.lastIndexOf(\"\\\\\")+1);return r=r.replace(/%22/g,'\"'),r=r.replace(/&#(\\d{4});/g,(d,l)=>String.fromCharCode(l)),r}E(v,\"_fileName\");async function Z(u,a){if(!/multipart/i.test(a))throw new TypeError(\"Failed to fetch\");const n=a.match(/boundary=(?:\"([^\"]+)\"|([^;]+))/i);if(!n)throw new TypeError(\"no or bad content-type header, no multipart boundary\");const r=new k(n[1]||n[2]);let d,l,c,p,e,i;const A=[],H=new V,O=E(s=>{c+=f.decode(s,{stream:!0})},\"onPartData\"),y=E(s=>{A.push(s)},\"appendToFile\"),o=E(()=>{const s=new Y(A,i,{type:e});H.append(p,s)},\"appendFileToFormData\"),L=E(()=>{H.append(p,c)},\"appendEntryToFormData\"),f=new TextDecoder(\"utf-8\");f.decode(),r.onPartBegin=function(){r.onPartData=O,r.onPartEnd=L,d=\"\",l=\"\",c=\"\",p=\"\",e=\"\",i=null,A.length=0},r.onHeaderField=function(s){d+=f.decode(s,{stream:!0})},r.onHeaderValue=function(s){l+=f.decode(s,{stream:!0})},r.onHeaderEnd=function(){if(l+=f.decode(),d=d.toLowerCase(),d===\"content-disposition\"){const s=l.match(/\\bname=(\"([^\"]*)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))/i);s&&(p=s[2]||s[3]||\"\"),i=v(l),i&&(r.onPartData=y,r.onPartEnd=o)}else d===\"content-type\"&&(e=l);l=\"\",d=\"\"};for await(const s of u)r.write(s);return r.end(),H}E(Z,\"toFormData\");export{Z as toFormData};\n"],"x_google_ignoreList":[0],"mappings":";;;;;;;;;;;;;AAAA,IAAI,IAAE,OAAO;AAAe,IAAI,KAAG,GAAE,MAAI,EAAE,GAAE,QAAO;CAAC,OAAM;CAAE,cAAa,CAAC;CAAE,CAAC;AAAwR,IAAI,IAAE;AAAE,MAAM,IAAE;CAAC,gBAAe;CAAI,oBAAmB;CAAI,cAAa;CAAI,oBAAmB;CAAI,cAAa;CAAI,0BAAyB;CAAI,qBAAoB;CAAI,iBAAgB;CAAI,WAAU;CAAI,KAAI;CAAI;AAAC,IAAI,IAAE;AAAE,MAAM,IAAE;CAAC,eAAc;CAAE,eAAc,KAAG;CAAE,EAAC,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,KAAI,IAAE,GAAE,MAAG,IAAE,IAAG,QAAQ,EAAC,IAAE,QAAM,IAAG,OAAO,EAAC,IAAE,MAAMA,IAAC;CAAC,YAAY,GAAE;AAAC,OAAK,QAAM,GAAE,KAAK,QAAM,GAAE,KAAK,cAAY,GAAE,KAAK,gBAAc,GAAE,KAAK,eAAa,GAAE,KAAK,gBAAc,GAAE,KAAK,cAAY,GAAE,KAAK,aAAW,GAAE,KAAK,YAAU,GAAE,KAAK,gBAAc,EAAE,EAAC,IAAE;MACz4B;EAAE,MAAM,IAAE,IAAI,WAAW,EAAE,OAAO;AAAC,OAAI,IAAI,IAAE,GAAE,IAAE,EAAE,QAAO,IAAI,GAAE,KAAG,EAAE,WAAW,EAAE,EAAC,KAAK,cAAc,EAAE,MAAI,CAAC;AAAE,OAAK,WAAS,GAAE,KAAK,aAAW,IAAI,WAAW,KAAK,SAAS,SAAO,EAAE,EAAC,KAAK,QAAM,EAAE;;CAAe,MAAM,GAAE;EAAC,IAAI,IAAE;EAAE,MAAM,IAAE,EAAE;EAAO,IAAI,IAAE,KAAK,OAAM,EAAC,YAAW,GAAE,UAAS,GAAE,eAAc,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,MAAG;EAAK,MAAM,IAAE,KAAK,SAAS,QAAO,IAAE,IAAE,GAAE,IAAE,EAAE;EAAO,IAAI,GAAE;EAAE,MAAM,IAAE,GAAE,MAAG;AAAC,QAAK,IAAE,UAAQ;KAAG,OAAO,EAAC,IAAE,GAAE,MAAG;AAAC,UAAO,KAAK,IAAE;KAAS,QAAQ,EAAC,IAAE,GAAG,GAAE,GAAE,GAAE,MAAI;AAAC,IAAC,MAAI,KAAK,KAAG,MAAI,MAAI,KAAK,GAAG,KAAG,EAAE,SAAS,GAAE,EAAE,CAAC;KAAE,WAAW,EAAC,IAAE,GAAG,GAAE,MAAI;GAAC,MAAM,IAAE,IAAE;AAAO,QAAK,SAAO,KAAG,EAAE,GAAE,KAAK,IAAG,GAAE,EAAE,EAAC,OAAO,KAAK,OAAK,EAAE,GAAE,KAAK,IAAG,EAAE,QAAO,EAAE,EAAC,KAAK,KAAG;KAAK,eAAe;AAAC,OAAI,IAAE,GAAE,IAAE,GAAE,IAAI,SAAO,IAAE,EAAE,IAAG,GAAd;GAAiB,KAAK,EAAE;AAAe,QAAG,MAAI,EAAE,SAAO,GAAE;AAAC,SAAG,MAAI,EAAE,MAAG,EAAE;cAAsB,MAAI,EAAE;AAAO;AAAI;eAAc,IAAE,MAAI,EAAE,SAAO,GAAE;AAAC,SAAG,IAAE,EAAE,iBAAe,MAAI,EAAE,KAAE,EAAE,KAAI,IAAE;cAAU,EAAE,IAAE,EAAE,kBAAgB,MAAI,EAAE,KAAE,GAAE,EAAE,cAAc,EAAC,IAAE,EAAE;SAAwB;AAAO;;AAAM,UAAI,EAAE,IAAE,OAAK,IAAE,KAAI,MAAI,EAAE,IAAE,MAAI;AAAI;GAAM,KAAK,EAAE,mBAAmB,KAAE,EAAE,cAAa,EAAE,gBAAgB,EAAC,IAAE;GAAE,KAAK,EAAE;AAAa,QAAG,MAAI,GAAE;AAAC,OAAE,gBAAgB,EAAC,IAAE,EAAE;AAAoB;;AAAM,QAAG,KAAI,MAAI,EAAE;AAAM,QAAG,MAAI,GAAE;AAAC,SAAG,MAAI,EAAE;AAAO,OAAE,iBAAgB,CAAC,EAAE,EAAC,IAAE,EAAE;AAAmB;;AAAM,QAAG,IAAE,EAAE,EAAE,EAAC,IAAE,KAAG,IAAE,EAAE;AAAO;GAAM,KAAK,EAAE;AAAmB,QAAG,MAAI,EAAE;AAAM,MAAE,gBAAgB,EAAC,IAAE,EAAE;GAAa,KAAK,EAAE;AAAa,UAAI,MAAI,EAAE,iBAAgB,CAAC,EAAE,EAAC,EAAE,cAAc,EAAC,IAAE,EAAE;AAA0B;GAAM,KAAK,EAAE;AAAyB,QAAG,MAAI,EAAE;AAAO,QAAE,EAAE;AAAmB;GAAM,KAAK,EAAE;AAAoB,QAAG,MAAI,EAAE;AAAO,MAAE,eAAe,EAAC,IAAE,EAAE;AAAgB;GAAM,KAAK,EAAE,gBAAgB,KAAE,EAAE,WAAU,EAAE,aAAa;GAAC,KAAK,EAAE;AAAU,QAAG,IAAE,GAAE,MAAI,GAAE;AAAC,UAAI,KAAG,GAAE,IAAE,KAAG,EAAE,EAAE,MAAK,IAAI,MAAG;AAAE,UAAG,GAAE,IAAE,EAAE;;AAAG,QAAG,IAAE,EAAE,OAAO,GAAE,OAAK,KAAG,MAAI,KAAG,EAAE,cAAa,CAAC,EAAE,EAAC,OAAK,IAAE;aAAU,MAAI,EAAE,OAAO,MAAI,MAAI,IAAE,KAAG,EAAE,gBAAc,MAAI,IAAE,KAAG,EAAE,gBAAc,IAAE;aAAU,IAAE,MAAI,EAAE,OAAO,KAAG,IAAE,EAAE,eAAe;SAAG,IAAE,GAAE,MAAI,GAAE;AAAC,WAAG,CAAC,EAAE,eAAc,EAAE,YAAY,EAAC,EAAE,cAAc,EAAC,IAAE,EAAE;AAAmB;;UAAY,KAAE,EAAE,iBAAe,MAAI,KAAG,EAAE,YAAY,EAAC,IAAE,EAAE,KAAI,IAAE,KAAG,IAAE;AAAE,QAAG,IAAE,EAAE,GAAE,IAAE,KAAG;aAAU,IAAE,GAAE;KAAC,MAAM,IAAE,IAAI,WAAW,EAAE,QAAO,EAAE,YAAW,EAAE,WAAW;AAAC,OAAE,cAAa,GAAE,GAAE,EAAE,EAAC,IAAE,GAAE,EAAE,aAAa,EAAC;;AAAI;GAAM,KAAK,EAAE,IAAI;GAAM,QAAQ,OAAM,IAAI,MAAM,6BAA6B,IAAI;;AAAC,IAAE,gBAAgB,EAAC,EAAE,gBAAgB,EAAC,EAAE,aAAa,EAAC,KAAK,QAAM,GAAE,KAAK,QAAM,GAAE,KAAK,QAAM;;CAAE,MAAK;AAAC,MAAG,KAAK,UAAQ,EAAE,sBAAoB,KAAK,UAAQ,KAAG,KAAK,UAAQ,EAAE,aAAW,KAAK,UAAQ,KAAK,SAAS,OAAO,MAAK,WAAW;WAAS,KAAK,UAAQ,EAAE,IAAI,OAAM,IAAI,MAAM,mDAAmD;;;AAAG,EAAE,GAAE,kBAAkB;AAAC,IAAI,IAAE;AAAE,SAAS,EAAE,GAAE;CAAC,MAAM,IAAE,EAAE,MAAM,6DAA6D;AAAC,KAAG,CAAC,EAAE;CAAO,MAAM,IAAE,EAAE,MAAI,EAAE,MAAI;CAAG,IAAI,IAAE,EAAE,MAAM,EAAE,YAAY,KAAK,GAAC,EAAE;AAAC,QAAO,IAAE,EAAE,QAAQ,QAAO,KAAI,EAAC,IAAE,EAAE,QAAQ,gBAAe,GAAE,MAAI,OAAO,aAAa,EAAE,CAAC,EAAC;;AAAE,EAAE,GAAE,YAAY;AAAC,eAAe,EAAE,GAAE,GAAE;AAAC,KAAG,CAAC,aAAa,KAAK,EAAE,CAAC,OAAM,IAAI,UAAU,kBAAkB;CAAC,MAAM,IAAE,EAAE,MAAM,kCAAkC;AAAC,KAAG,CAAC,EAAE,OAAM,IAAI,UAAU,uDAAuD;CAAC,MAAM,IAAE,IAAI,EAAE,EAAE,MAAI,EAAE,GAAG;CAAC,IAAI,GAAE,GAAE,GAAE,GAAE,GAAE;CAAE,MAAM,IAAE,EAAE,EAAC,IAAE,IAAIC,IAAC,EAAC,IAAE,GAAE,MAAG;AAAC,OAAG,EAAE,OAAO,GAAE,EAAC,QAAO,CAAC,GAAE,CAAC;IAAE,aAAa,EAAC,IAAE,GAAE,MAAG;AAAC,IAAE,KAAK,EAAE;IAAE,eAAe,EAAC,IAAE,QAAM;EAAC,MAAM,IAAE,IAAIC,GAAE,GAAE,GAAE,EAAC,MAAK,GAAE,CAAC;AAAC,IAAE,OAAO,GAAE,EAAE;IAAE,uBAAuB,EAAC,IAAE,QAAM;AAAC,IAAE,OAAO,GAAE,EAAE;IAAE,wBAAwB,EAAC,IAAE,IAAI,YAAY,QAAQ;AAAC,GAAE,QAAQ,EAAC,EAAE,cAAY,WAAU;AAAC,IAAE,aAAW,GAAE,EAAE,YAAU,GAAE,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,IAAG,IAAE,MAAK,EAAE,SAAO;IAAG,EAAE,gBAAc,SAAS,GAAE;AAAC,OAAG,EAAE,OAAO,GAAE,EAAC,QAAO,CAAC,GAAE,CAAC;IAAE,EAAE,gBAAc,SAAS,GAAE;AAAC,OAAG,EAAE,OAAO,GAAE,EAAC,QAAO,CAAC,GAAE,CAAC;IAAE,EAAE,cAAY,WAAU;AAAC,MAAG,KAAG,EAAE,QAAQ,EAAC,IAAE,EAAE,aAAa,EAAC,MAAI,uBAAsB;GAAC,MAAM,IAAE,EAAE,MAAM,oDAAoD;AAAC,SAAI,IAAE,EAAE,MAAI,EAAE,MAAI,KAAI,IAAE,EAAE,EAAE,EAAC,MAAI,EAAE,aAAW,GAAE,EAAE,YAAU;QAAQ,OAAI,mBAAiB,IAAE;AAAG,MAAE,IAAG,IAAE;;AAAI,YAAU,MAAM,KAAK,EAAE,GAAE,MAAM,EAAE;AAAC,QAAO,EAAE,KAAK,EAAC;;AAAE,EAAE,GAAE,aAAa"}