free-computer-use 0.2.0 → 0.2.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # Changelog
2
2
 
3
+ ## Unreleased
4
+
5
+ ## 0.2.2 - 2026-09-26
6
+
7
+ ### Fixed
8
+
9
+ - Keep the planner page context within its configured character budget, including
10
+ recent tabs and extracted evidence from earlier pages.
11
+ - Bound retained extraction previews and serialize only compact slices of
12
+ structured results.
13
+
14
+ ## 0.2.1 - 2026-09-26
15
+
16
+ ### Changed
17
+
18
+ - “First/top N links” tasks now accept any available count up to the requested
19
+ limit instead of failing when the page contains fewer links.
20
+ - The local HTTP proxy retries one bodyless GET/HEAD after a reused-socket
21
+ reset; requests that could cause side effects are never replayed.
22
+ - The HTTP proxy drops requests canceled during DNS lookup and aborts in-flight
23
+ upstream HTTP requests when the browser disconnects.
24
+
25
+ ### Security
26
+
27
+ - Redact recognized GitHub, GitLab and Slack token prefixes from prompts, traces
28
+ and history output.
29
+
3
30
  ## 0.2.0 - 2026-09-26
4
31
 
5
32
  ### Added
package/README.md CHANGED
@@ -20,16 +20,20 @@
20
20
  <a href="SECURITY.md">Security</a>
21
21
  </p>
22
22
 
23
- **Your browser. Your model. Your call.** Give your browser a goal; the model proposes short action batches, and Playwright runs them locally. You approve website access and sensitive actions, then inspect what happened.
23
+ **Your browser. Your model. Your call.** Give your browser a goal; your chosen model proposes short, typed action batches, and Playwright runs them locally. Approve website access and sensitive actions, then inspect the evidence and checks behind the result.
24
24
 
25
- Use an API or a supported model CLI for open-ended tasks. For common page-reading jobs, skip model setup entirely: FreeComputerUse can read visible text and links with deterministic local strategies.
25
+ Use an API or supported model CLI for open-ended tasks. Skip model setup for common page-reading jobs: deterministic local strategies read visible text, links and tables without a model call.
26
+
27
+ ## New in 0.2.2: planner context stays bounded
28
+
29
+ Longer tasks can collect large results across pages. The planner now receives the current page, recent tabs and extraction evidence inside one character cap, so prior results cannot silently inflate later prompts. Recent evidence remains available for planning, with bounded previews and a fixed recent-result window.
26
30
 
27
31
  ## No model key needed
28
32
 
29
33
  Install the release and start the local dashboard:
30
34
 
31
35
  ```bash
32
- npm install --global free-computer-use@0.2.0
36
+ npm install --global free-computer-use@0.2.2
33
37
  FCU_BROWSER_CHANNEL=chrome agent doctor
34
38
  FCU_BROWSER_CHANNEL=chrome agent ui
35
39
  ```
@@ -43,7 +47,7 @@ Open **http://127.0.0.1:4318**, enter a page URL and one of these goals, then ap
43
47
  | `Extract the first 5 links` | Return a bounded list of the first five links. |
44
48
  | `Extract the table` | Try the synthetic [practice revenue table](https://othmaneblial.github.io/FreeComputerUse/lab/reports.html). |
45
49
 
46
- These narrow workflows use local strategies and make zero model calls. General tasks need a configured provider. The declared minimum is Node.js 22.13; the verified setup is macOS 26.6 on Apple Silicon, Node 25.9.0 and system Chrome 154.0.8037.57. Other OS/browser combinations and the declared Node minimum remain unverified. See the [support matrix](docs/SUPPORT_MATRIX.md).
50
+ These narrow workflows use local strategies and make zero model calls. General tasks need a configured provider. The 0.2.2 release candidate passed the full local suite 135/135 on Node.js 25.9.0. The preceding Node.js 22.13.0 gate passed 133/133 after the proxy changes. Both used macOS 26.6/Apple Silicon with system Chrome 154.0.8037.57. Windows/Linux and other browser builds remain unverified. See the [support matrix](docs/SUPPORT_MATRIX.md).
47
51
 
48
52
  ## Watch a real run
49
53
 
@@ -73,7 +77,7 @@ Requires Node.js 22.13+, npm and an installed browser. The verified setup select
73
77
  ### Install from npm
74
78
 
75
79
  ```bash
76
- npm install --global free-computer-use@0.2.0
80
+ npm install --global free-computer-use@0.2.2
77
81
  FCU_BROWSER_CHANNEL=chrome agent doctor
78
82
  FCU_BROWSER_CHANNEL=chrome agent ui
79
83
  ```
@@ -146,7 +150,7 @@ Provider, operating-system, browser and accessibility evidence stays bounded to
146
150
 
147
151
  **Does the model receive screenshots or browser profiles?** No. The selected task and page context go to your provider; screenshots and browser profiles stay local. Local data is not encrypted.
148
152
 
149
- **Which platform is verified?** macOS 26.6 on Apple Silicon, Node 25.9.0 and system Chrome 154.0.8037.57. Check the [support matrix](docs/SUPPORT_MATRIX.md) for exact coverage and limits.
153
+ **Which platform is verified?** Full local validation passed on macOS 26.6/Apple Silicon with Node 22.13.0 and 25.9.0 and system Chrome 154.0.8037.57. Windows/Linux and other browser builds remain unverified; see the [support matrix](docs/SUPPORT_MATRIX.md) for exact coverage and limits.
150
154
 
151
155
  ## Explore and contribute
152
156
 
package/SECURITY.md CHANGED
@@ -50,7 +50,10 @@ path. User restrictions and final completion criteria still apply.
50
50
  system-resolver's discovered NAT64 prefix are blocked, including when the
51
51
  hostname is allowlisted. Discovery uses `ipv4only.arpa`; if the resolver does
52
52
  not return synthesized AAAA records, network-specific prefixes cannot be
53
- checked. Explicit IP destinations still use exact origin permissions. Ultra
53
+ checked. A browser disconnect during DNS lookup prevents later outbound
54
+ dispatch; disconnecting an active proxied HTTP request closes its upstream
55
+ connection, though the target may already have received it. Explicit IP
56
+ destinations still use exact origin permissions. Ultra
54
57
  mode and the low-level `allowExternal` option bypass
55
58
  origin and private-address checks. A synthetic public-to-loopback DNS change
56
59
  test confirms the proxy rejects the connection before the target receives it;
@@ -108,11 +111,11 @@ Known profile/file values are redacted from prompts, event logs and traces and
108
111
  resolve locally during actions. Common credentials in URL queries and fragments,
109
112
  as well as bearer-shaped tokens, are redacted before model requests, new trace
110
113
  saves and dashboard/CLI history output; the browser still opens the original URL.
111
- Secret-looking key strings are also redacted. Records extraction omits
112
- password/payment field values. These filters do not identify every possible
113
- secret in arbitrary website content. Do not publish local traces, browser
114
- profiles or screenshots from a real account. Replays that depended on a
115
- redacted URL credential need a fresh starting URL.
114
+ Recognized GitHub, GitLab and Slack token prefixes and `sk-`-shaped keys are also
115
+ redacted. Records extraction omits password/payment field values. These filters
116
+ do not identify every possible secret in arbitrary website content. Do not
117
+ publish local traces, browser profiles or screenshots from a real account.
118
+ Replays that depended on a redacted URL credential need a fresh starting URL.
116
119
 
117
120
  ## Dashboard boundary
118
121
 
@@ -12,7 +12,7 @@ export const ConditionSchema = z.discriminatedUnion('type', [
12
12
  z.object({ type: z.literal('extraction_created'), key: text.optional() }).strict(),
13
13
  z.object({ type: z.literal('extraction_contains'), key: text.optional(), value: text }).strict(),
14
14
  z.object({ type: z.literal('tab_count'), count: z.number().int().min(1).max(100) }).strict(),
15
- z.object({ type: z.literal('extraction_count'), key: text.optional(), min: z.number().int().min(1).max(1000), max: z.number().int().min(1).max(1000).optional() }).strict(),
15
+ z.object({ type: z.literal('extraction_count'), key: text.optional(), min: z.number().int().min(0).max(1000), max: z.number().int().min(0).max(1000).optional() }).strict(),
16
16
  ...['element_exists', 'element_visible', 'element_not_visible', 'checkbox_checked', 'form_submitted']
17
17
  .map(type => z.object({ type: z.literal(type), target: TargetSchema }).strict()),
18
18
  ...['url_equals', 'url_contains', 'text_exists', 'text_disappeared', 'title_changed']
@@ -20,7 +20,7 @@ export const genericAdapter = {
20
20
  if (firstLinks) {
21
21
  const limit = Number(firstLinks[1]);
22
22
  if (limit >= 1 && limit <= 1000)
23
- return PlanSchema.parse({ goal, steps: [`Extract the first ${limit} visible links`], actions: [{ type: 'extract', format: 'links', key: 'links', limit }], completion: [{ type: 'extraction_created', key: 'links' }, { type: 'extraction_count', key: 'links', min: limit, max: limit }], continue: false });
23
+ return PlanSchema.parse({ goal, steps: [`Extract up to the first ${limit} visible links`], actions: [{ type: 'extract', format: 'links', key: 'links', limit }], completion: [{ type: 'extraction_created', key: 'links' }], continue: false });
24
24
  }
25
25
  if (/^(?:extract|list)(?: the)? links?\.?$/i.test(goal))
26
26
  return PlanSchema.parse({ goal, steps: ['Extract visible links'], actions: [{ type: 'extract', format: 'links', key: 'links' }], completion: [{ type: 'extraction_created', key: 'links' }], continue: false });
@@ -1 +1 @@
1
- {"version":3,"file":"generic.js","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generic.js","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"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"}
@@ -99,17 +99,32 @@ export class Agent extends EventEmitter {
99
99
  context(goal, state, completed, previous) {
100
100
  const remaining = this.budget.limits.maxInputTokens === null ? Infinity : this.budget.limits.maxInputTokens - this.budget.input - this.budget.pendingInput;
101
101
  const maxChars = Math.min(this.budget.tight ? 3000 : 9000, Math.max(1200, remaining - 9000));
102
- const full = this.observer.compressor.compress(state, { goal, maxChars });
102
+ const supplementalLimit = Math.floor(maxChars * .3);
103
+ const full = this.observer.compressor.compress(state, { goal, maxChars: maxChars - supplementalLimit });
103
104
  let page = full.text;
104
105
  if (previous) {
105
106
  const diff = JSON.stringify(diffPages(previous, state));
106
107
  if (diff.length < page.length)
107
108
  page = `PAGE DIFF\n${diff}`;
108
109
  }
109
- const structured = this.browser.extractions.filter(e => e.value !== null && typeof e.value === 'object').slice(-16).map(e => ({ key: e.key, preview: JSON.stringify(e.value).slice(0, 1400) }));
110
- const priorText = this.browser.extractions.filter(e => typeof e.value === 'string').slice(-16).map(e => ({ key: e.key, preview: e.value.slice(-1800) }));
111
- page += '\nOPEN TABS ' + JSON.stringify(this.browser.context.pages().map((p, index) => ({ index, url: p.url, active: p === this.browser.page }))) + '\nEXTRACTED EVIDENCE FROM PRIOR PAGES ' + this.variables.redact(JSON.stringify([...structured, ...priorText]));
112
- return { goal: this.variables.redact(goal), page: this.variables.redact(page), aliases: this.variables.aliases(), completed: completed.slice(-12), allowedOrigins: this.browser.options.allowedOrigins ?? [], phase: 'current batch', trustedCompletionCriteria: [...this.options.completionCriteria ?? [], ...goalCriteria(goal)] };
110
+ const pages = this.browser.context.pages(), recentPages = pages.slice(-Math.max(1, Math.min(4, Math.floor(supplementalLimit / 180))));
111
+ const lines = [`OPEN TABS ${JSON.stringify(recentPages.map((p, index) => ({ index: pages.length - recentPages.length + index, url: p.url().slice(0, 120), active: p === this.browser.page })))}`];
112
+ const previewLimit = Math.min(400, Math.max(100, Math.floor(supplementalLimit / 5)));
113
+ const evidence = this.browser.extractions.slice(-8).reverse();
114
+ for (const item of evidence) {
115
+ const preview = typeof item.value === 'string' ? item.value : JSON.stringify(item.value, (_key, value) => typeof value === 'string' ? value.slice(0, 120) : Array.isArray(value) ? value.slice(0, 4) : value && typeof value === 'object' ? Object.fromEntries(Object.entries(value).slice(0, 6)) : value);
116
+ lines.push(`PRIOR EVIDENCE ${item.key}: ${(preview ?? '').slice(0, previewLimit)}`);
117
+ }
118
+ let used = 0;
119
+ const supplemental = [];
120
+ for (const line of lines) {
121
+ if (used + line.length + 1 > supplementalLimit)
122
+ continue;
123
+ supplemental.push(line);
124
+ used += line.length + 1;
125
+ }
126
+ page = this.variables.redact(page + '\n' + supplemental.join('\n')).slice(0, maxChars);
127
+ return { goal: this.variables.redact(goal), page, aliases: this.variables.aliases(), completed: completed.slice(-12), allowedOrigins: this.browser.options.allowedOrigins ?? [], phase: 'current batch', trustedCompletionCriteria: [...this.options.completionCriteria ?? [], ...goalCriteria(goal)] };
113
128
  }
114
129
  async run(goal, url, providedPlan, allowProvider = true) {
115
130
  if (this.active)
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAC,YAAY,EAA2B,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAoB,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAC,cAAc,EAAsB,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAa,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAmB,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAU/C,MAAM,OAAO,KAAM,SAAQ,YAAY;IAOhB,OAAO;IANnB,OAAO,CAAS;IAAS,QAAQ,GAAC,IAAI,QAAQ,EAAE,CAAC;IAAS,OAAO,GAAC,IAAI,OAAO,EAAE,CAAC;IAChF,SAAS,CAAkB;IAAS,QAAQ,CAAU;IAAS,SAAS,CAAgB;IACjG,MAAM,CAAa;IAAA,KAAK,CAAY;IAAA,KAAK,CAAQ;IAAA,MAAM,GAAc,EAAE,CAAC;IACxE,MAAM,GAAC,KAAK,CAAC;IACL,cAAc,GAAC,IAAI,GAAG,EAAU,CAAC;IACjC,eAAe,GAAC,IAAI,OAAO,EAAkB,CAAC;IACtD,YAAqB,OAAoB;QACvC,KAAK,EAAE,CAAC;uBADW,OAAO;QAClB,IAAI,CAAC,SAAS,GAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,GAAC,IAAI,OAAO,CAAC,EAAC,GAAG,OAAO,CAAC,OAAO,EAAC,aAAa,EAAC,OAAO,CAAC,IAAI,KAAG,OAAO,IAAE,OAAO,CAAC,OAAO,EAAE,aAAa,EAAC,cAAc,EAAC,GAAG,CAAA,EAAE,CAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC;QAChK,IAAI,CAAC,MAAM,GAAC,OAAO,CAAC,MAAM,IAAE,IAAI,WAAW,EAAE,CAAC;QAAA,IAAI,CAAC,SAAS,GAAC,IAAI,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/F,IAAI,CAAC,QAAQ,GAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAC,IAAI,CAAC,QAAQ,EAAC,IAAI,CAAC,SAAS,EAAC,IAAI,CAAC,OAAO,EAAC,EAAC,YAAY,EAAC,OAAO,CAAC,IAAI,KAAG,OAAO,CAAA,CAAC,CAAA,OAAO,CAAA,CAAC,CAAA,OAAO,CAAC,YAAY,EAAC,WAAW,EAAC,OAAO,CAAC,WAAW,EAAC,CAAC,CAAC;QACtL,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,EAAC,IAAI,CAAA,EAAE,CAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,6BAA6B,EAAC,IAAI,CAAC,CAAC,CAAC;QACzF,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAC,GAAE,EAAE,GAAC,IAAG,IAAI,CAAC,OAAO,CAAC,OAAO;YAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC;IAC7F,CAAC;IACO,KAAK,CAAC,aAAa,CAAC,KAAY;QACtC,MAAM,MAAM,GAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QACnC,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,KAAG,EAAE,CAAC;QACvD,IAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAG,OAAO,IAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAC,CAAC;YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAAA,OAAO;QAAA,CAAC;QACtI,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,MAAM,GAAG,EAAC,EAAC,IAAI,EAAC,YAAY,EAAC,MAAM,EAAC,KAAK,EAAC,oEAAoE,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC;QACrL,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,GAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,KAAG,MAAM,CAAC,CAAC;QACxE,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,KAAG,EAAE,CAAC;QAAA,IAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,aAAa,KAAG,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA,CAAC;IAC5D,UAAU,CAAC,KAAY;QACrB,MAAM,MAAM,GAAC,cAAc,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QAC1C,IAAG,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;YAAC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC5F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,GAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,IAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,KAAG,MAAM,CAAC,CAAC;QAC1G,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,KAAG,EAAE,CAAC;QAAA,IAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;QAC7D,IAAG,IAAI,CAAC,MAAM,IAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAE,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,KAAG,MAAM;YAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACzI,CAAC;IACO,kBAAkB;QACxB,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACnC,IAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;YAAC,OAAO;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,KAAK,GAAC,CAAC,IAAS,EAAC,EAAE,CAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC,GAAE,EAAE;YAC7C,IAAG,CAAC,IAAI,CAAC,MAAM,IAAE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAE,IAAI,KAAG,IAAI,CAAC,OAAO,CAAC,IAAI;gBAAC,OAAO;YACvE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAAA,OAAO,CAAC,EAAE,CAAC,MAAM,EAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,KAAY,EAAC,OAAc,EAAC,IAAa;QAC7C,MAAM,KAAK,GAAY,EAAC,KAAK,EAAC,OAAO,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,GAAG,EAAE,EAAC,IAAI,EAAC,IAAI,KAAG,SAAS,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,CAAC;QAC9K,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAA,IAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAC,GAAG;YAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC,KAAK,CAAC,CAAC;IACjG,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAU,IAAE,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;QAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA,CAAC;IACpI,KAAK,CAAC,OAAO;QACX,MAAM,KAAK,GAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAAA,IAAI,CAAC,KAAK,GAAC,KAAK,CAAC;QAC5E,MAAM,UAAU,GAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,SAAS,EAAC,OAAO,KAAK,CAAC,SAAS,YAAY,UAAU,CAAC,KAAK,QAAQ,EAAC,EAAC,GAAG,EAAC,KAAK,CAAC,GAAG,EAAC,KAAK,EAAC,KAAK,CAAC,KAAK,EAAC,IAAI,EAAC,KAAK,CAAC,IAAI,EAAC,SAAS,EAAC,UAAU,CAAC,SAAS,EAAC,CAAC,CAAC;QAClK,OAAO,KAAK,CAAC;IACf,CAAC;IACO,OAAO,CAAC,IAAW,EAAC,KAAe,EAAC,SAAkB,EAAC,QAAmB;QAChF,MAAM,SAAS,GAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,KAAG,IAAI,CAAA,CAAC,CAAA,QAAQ,CAAA,CAAC,CAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,GAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC/I,MAAM,QAAQ,GAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAA,CAAC,CAAA,IAAI,CAAA,CAAC,CAAA,IAAI,EAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAC,SAAS,GAAC,IAAI,CAAC,CAAC,CAAC;QACnF,MAAM,IAAI,GAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC;QACpE,IAAI,IAAI,GAAC,IAAI,CAAC,IAAI,CAAC;QACnB,IAAG,QAAQ,EAAC,CAAC;YAAA,MAAM,IAAI,GAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAC,KAAK,CAAC,CAAC,CAAC;YAAA,IAAG,IAAI,CAAC,MAAM,GAAC,IAAI,CAAC,MAAM;gBAAC,IAAI,GAAC,cAAc,IAAI,EAAE,CAAC;QAAA,CAAC;QACxH,MAAM,UAAU,GAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,KAAG,IAAI,IAAE,OAAO,CAAC,CAAC,KAAK,KAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,EAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,OAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAC,IAAI,CAAC,EAAC,CAAC,CAAC,CAAC;QAC9K,MAAM,SAAS,GAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,OAAO,CAAC,CAAC,KAAK,KAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,EAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,OAAO,EAAE,CAAC,CAAC,KAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC,CAAC;QACxJ,IAAI,IAAE,cAAc,GAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,CAAA,CAAC,EAAC,KAAK,EAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,MAAM,EAAC,CAAC,KAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAC,CAAC,CAAC,CAAC,GAAC,wCAAwC,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,UAAU,EAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAChP,OAAO,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,OAAO,EAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAC,SAAS,EAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAC,cAAc,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,IAAE,EAAE,EAAC,KAAK,EAAC,eAAe,EAAC,yBAAyB,EAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAE,EAAE,EAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,EAAC,CAAC;IACnT,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,IAAW,EAAC,GAAW,EAAC,YAAkB,EAAC,aAAa,GAAC,IAAI;QACrE,IAAG,IAAI,CAAC,MAAM;YAAC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACnE,IAAG,IAAI,CAAC,OAAO,CAAC,OAAO;YAAC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACpF,IAAG,GAAG;YAAC,cAAc,CAAC,GAAG,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,GAAC,IAAI,CAAC;QAAA,MAAM,SAAS,GAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAAA,MAAM,SAAS,GAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;QACxF,MAAM,QAAQ,GAAC,aAAa,CAAA,CAAC,CAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAA,CAAC,CAAA,SAAS,CAAC;QAC7D,MAAM,UAAU,GAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAAA,IAAI,OAA2B,EAAC,OAAO,GAAC,CAAC,EAAC,SAAS,GAAC,CAAC,EAAC,SAAS,GAAC,CAAC,CAAC;QAC1G,MAAM,KAAK,GAAO,EAAC,OAAO,EAAC,CAAC,EAAC,EAAE,EAAC,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAC,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,EAAC,IAAI,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,GAAG,EAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAE,EAAE,CAAC,EAAC,MAAM,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,EAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,UAAU,EAAC,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,CAAC;QAC/S,IAAI,CAAC,KAAK,GAAC,KAAK,CAAC;QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAC,IAAI,GAAG,EAAiB,EAAC,WAAW,GAAC,IAAI,GAAG,EAAiB,EAAC,SAAS,GAAU,EAAE,CAAC;QACnG,IAAI,QAAQ,GAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAC,iBAAiB,GAAC,CAAC,CAAC;QACvD,IAAG,CAAC;YACF,IAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;gBAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAC,CAAC,CAAC;YAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,GAAC,CAAC,CAAC;YAAA,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,GAAC,CAAC,CAAC;YACrG,IAAG,GAAG;gBAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACxC,OAAO,GAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YAAA,KAAK,CAAC,GAAG,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1E,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,EAAC,CAAC;gBAC/D,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,sEAAsE,CAAC,CAAC;gBAChH,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAAA,OAAO,GAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAAA,QAAQ,GAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC9F,CAAC;YACD,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,YAAY,KAAG,KAAK,IAAE,CAAC,YAAY,CAAA,CAAC,CAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAC,OAAO,CAAC,CAAA,CAAC,CAAA,SAAS,CAAC;YAC5G,IAAI,IAAI,GAAC,YAAY,IAAE,OAAO,EAAE,IAAI,CAAC;YACrC,IAAG,OAAO,EAAC,CAAC;gBAAA,SAAS,EAAE,CAAC;gBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,4BAA4B,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAAA,CAAC;YACtF,IAAG,CAAC,IAAI;gBAAC,KAAI,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAE,CAAC,cAAc,CAAC,EAAC,CAAC;oBACrE,IAAG,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAC,CAAC;wBAAA,IAAI,GAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAC,OAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAAA,IAAG,IAAI,EAAC,CAAC;4BAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,2BAA2B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;4BAAA,MAAM;wBAAA,CAAC;oBAAA,CAAC;gBAC1K,CAAC;YACD,IAAI,QAA4B,CAAC;YACjC,OAAM,IAAI,EAAC,CAAC;gBACV,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAChC,IAAG,CAAC,IAAI,EAAC,CAAC;oBACR,IAAG,CAAC,QAAQ;wBAAC,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;oBAC/F,IAAI,CAAC,KAAK,CAAC,MAAM,EAAC,6BAA6B,CAAC,CAAC;oBAAA,SAAS,EAAE,CAAC;oBAC7D,IAAI,GAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAC,IAAI,CAAC,KAAM,EAAC,SAAS,EAAC,QAAQ,CAAC,CAAC,CAAC;gBAC9E,CAAC;gBACD,MAAM,UAAU,GAAC,IAAI,CAAC,KAAM,CAAC;gBAC7B,IAAI,GAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAAA,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAC,gBAAgB,EAAC,IAAI,CAAC,CAAC;gBAAA,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjK,IAAI,OAAO,GAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gBAAA,IAAI,KAAK,GAAC,CAAC,CAAC;gBAC1C,OAAM,KAAK,GAAC,OAAO,CAAC,MAAM,EAAC,CAAC;oBAC1B,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;oBAChC,IAAG,QAAQ,KAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAC,CAAC;wBAAA,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;wBAAA,QAAQ,GAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;oBAAA,CAAC;oBAC1F,IAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAC,CAAC;wBAAA,IAAI,GAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;wBAAA,IAAI,CAAC,OAAO,CAAC,WAAW,GAAC,SAAS,CAAC;wBAAA,OAAO,GAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;wBAAA,KAAK,GAAC,CAAC,CAAC;wBAAA,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAAA,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;wBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,mBAAmB,EAAC,IAAI,CAAC,CAAC;oBAAA,CAAC;oBAC1N,IAAG,KAAK,CAAC,OAAO,CAAC,MAAM,IAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAE,GAAG,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;oBACtG,MAAM,MAAM,GAAC,IAAI,CAAC,KAAM,CAAC;oBAAA,MAAM,MAAM,GAAC,OAAO,CAAC,KAAK,CAAE,CAAC;oBACtD,IAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAG,OAAO,IAAE,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAE,CAAC,6EAA6E,CAAC,IAAI,CAAC,IAAI,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;oBAC3Q,MAAM,GAAG,GAAC,MAAM,CAAC,IAAI,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAAA,MAAM,KAAK,GAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAE,CAAC,CAAC,GAAC,CAAC,CAAC;oBAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;oBAC1G,IAAG,KAAK,GAAC,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAE,CAAC,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;oBACpG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAC,GAAG,MAAM,CAAC,IAAI,GAAG,QAAQ,IAAG,MAAM,CAAA,CAAC,CAAA,GAAG,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,EAAE,EAAE,EAAC,EAAC,KAAK,EAAC,KAAK,GAAC,CAAC,EAAC,KAAK,EAAC,OAAO,CAAC,MAAM,EAAC,CAAC,CAAC;oBACrI,MAAM,MAAM,GAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAAA,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC7I,IAAI,KAAK,GAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC/B,IAAG,MAAM,CAAC,GAAG,KAAG,KAAK,CAAC,GAAG,EAAC,CAAC;wBAAA,MAAM,KAAK,GAAC,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAE,CAAC,CAAC,GAAC,CAAC,CAAC;wBAAA,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC;wBAAA,IAAG,KAAK,GAAC,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAE,CAAC,CAAC;4BAAC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;oBAAA,CAAC;oBACrM,IAAG,MAAM,CAAC,OAAO,EAAC,CAAC;wBACjB,MAAM,UAAU,GAAC,QAAQ,IAAG,MAAM,CAAC,MAAM,IAAE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,KAAG,QAAQ,CAAA,CAAC,CAAA,MAAM,CAAC,MAAM,CAAC,MAAM,CAAA,CAAC,CAAA,SAAS,CAAC;wBACjH,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,IAAI,EAAC,MAAM,CAAC,IAAI,EAAC,GAAG,CAAC,KAAK,IAAG,MAAM,CAAC,MAAM,CAAA,CAAC,CAAA,EAAC,GAAG,EAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,GAAG,CAAC,UAAU,CAAA,CAAC,CAAA,EAAC,MAAM,EAAC,EAAC,IAAI,EAAC,UAAU,CAAC,IAAI,EAAC,IAAI,EAAC,UAAU,CAAC,IAAI,IAAE,UAAU,CAAC,KAAK,IAAE,UAAU,CAAC,EAAE,IAAE,UAAU,CAAC,GAAG,EAAC,EAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,GAAG,CAAC,KAAK,IAAG,MAAM,CAAC,MAAM,CAAA,CAAC,CAAA,EAAC,GAAG,EAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC;wBAC/S,KAAK,EAAE,CAAC;wBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAC,0BAA0B,EAAC,EAAC,MAAM,EAAC,MAAM,CAAC,IAAI,EAAC,UAAU,EAAC,MAAM,CAAC,UAAU,EAAC,QAAQ,EAAC,MAAM,CAAC,QAAQ,EAAC,CAAC,CAAC;wBAAA,SAAS;oBAC9I,CAAC;oBACD,IAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAE,oCAAoC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAE,EAAE,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACnH,IAAG,MAAM,CAAC,SAAS,EAAC,CAAC;wBACnB,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kGAAkG,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC7I,KAAK,GAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC7B,CAAC;oBACD,IAAG,CAAC,QAAQ,IAAE,OAAO,IAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAE,CAAC,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAE,sBAAsB,CAAC,CAAC;oBAC1G,OAAO,EAAE,CAAC;oBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAC,mCAAmC,EAAC,EAAC,YAAY,EAAC,MAAM,CAAC,MAAM,EAAC,KAAK,EAAC,MAAM,CAAC,KAAK,EAAC,CAAC,CAAC;oBACnH,MAAM,OAAO,GAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAC,KAAK,EAAC,SAAS,EAAC,MAAM,CAAC,CAAC;oBACxD,IAAG,OAAO,GAAC,CAAC;wBAAC,OAAO,CAAC,IAAI,IAAE,mBAAmB,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC3H,IAAG,OAAO,GAAC,CAAC,EAAC,CAAC;wBAAA,MAAM,KAAK,GAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAG,CAAC,CAAA,CAAC,CAAA,MAAM,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAG,CAAC,CAAA,CAAC,CAAA,MAAM,CAAA,CAAC,CAAA,MAAM,CAAC;wBAAA,OAAO,CAAC,IAAI,IAAE,mBAAmB,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC;oBAAA,CAAC;oBACrR,MAAM,QAAQ,GAAC,YAAY,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAC,GAAG,OAAO,EAAC,YAAY,EAAC,MAAM,CAAC,MAAM,EAAC,KAAK,EAAC,MAAM,CAAC,KAAK,IAAE,eAAe,EAAC,SAAS,EAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAC,KAAK,GAAC,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;oBAC9K,IAAG,QAAQ,CAAC,OAAO,GAAC,CAAC,IAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,GAAC,OAAO,CAAC,MAAM,GAAC,KAAK;wBAAC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;oBACxK,IAAG,QAAQ,CAAC,UAAU;wBAAC,IAAI,CAAC,UAAU,GAAC,QAAQ,CAAC,UAAU,CAAC;oBAC3D,IAAG,QAAQ,CAAC,QAAQ,KAAG,SAAS;wBAAC,IAAI,CAAC,QAAQ,GAAC,QAAQ,CAAC,QAAQ,CAAC;oBACjE,OAAO,CAAC,MAAM,CAAC,KAAK,EAAC,QAAQ,CAAC,OAAO,EAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC7D,CAAC;gBACD,MAAM,QAAQ,GAAC,GAAE,EAAE,CAAA,CAAC,GAAG,IAAK,CAAC,UAAU,EAAC,GAAG,CAAC,CAAC,IAAK,CAAC,QAAQ,CAAA,CAAC,CAAA,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAE,EAAE,EAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC,CAAC,CAAC;gBAChI,IAAI,YAAY,GAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAC,SAAS,CAAC,CAAC;gBAC/E,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAC,YAAY,CAAC,OAAO,CAAA,CAAC,CAAA,2BAA2B,CAAA,CAAC,CAAA,8BAA8B,EAAC,YAAY,CAAC,CAAC;gBAClH,IAAG,CAAC,YAAY,CAAC,OAAO,EAAC,CAAC;oBACxB,IAAG,QAAQ,IAAE,iBAAiB,GAAC,CAAC,IAAE,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,CAAC,IAAI,KAAG,kBAAkB,CAAC,IAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,CAAC,IAAI,KAAG,UAAU,CAAC,IAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,EAAE,CAAA,IAAI,CAAC,IAAI,KAAG,OAAO,IAAE,OAAO,IAAI,CAAC,MAAM,KAAG,QAAQ,IAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAE,EAAE,CAAC,CAAC,EAAC,CAAC;wBACrS,iBAAiB,EAAE,CAAC;wBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAC,2EAA2E,CAAC,CAAC;wBACnH,QAAQ,GAAC,UAAU,CAAC;wBAAA,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;wBAAA,IAAI,GAAC,SAAS,CAAC;wBAAA,SAAS;oBACnE,CAAC;oBACD,IAAG,CAAC,QAAQ,IAAE,OAAO,IAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAE,CAAC,CAAC;wBAAC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;oBAC7G,OAAO,EAAE,CAAC;oBAAA,MAAM,KAAK,GAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAC,wCAAwC,CAAC,CAAC;oBACzG,MAAM,QAAQ,GAAC,YAAY,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAC,KAAK,EAAC,SAAS,CAAC,EAAC,YAAY,EAAC,EAAC,IAAI,EAAC,cAAc,EAAC,EAAC,KAAK,EAAC,qFAAqF,EAAC,SAAS,EAAC,EAAE,EAAC,gBAAgB,EAAC,QAAQ,EAAE,EAAC,CAAC,CAAC,CAAC;oBAC1Q,IAAG,QAAQ,CAAC,UAAU;wBAAC,IAAI,CAAC,UAAU,GAAC,QAAQ,CAAC,UAAU,CAAC;oBAC3D,IAAG,QAAQ,CAAC,QAAQ,KAAG,SAAS;wBAAC,IAAI,CAAC,QAAQ,GAAC,QAAQ,CAAC,QAAQ,CAAC;oBACjE,IAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAC,CAAC;wBAAA,IAAI,GAAC,EAAC,GAAG,IAAI,EAAC,OAAO,EAAC,QAAQ,CAAC,OAAO,EAAC,CAAC;wBAAA,SAAS;oBAAA,CAAC;oBAC9E,YAAY,GAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAC,SAAS,CAAC,CAAC;oBAC3E,IAAG,CAAC,YAAY,CAAC,OAAO,IAAE,QAAQ,CAAC,QAAQ,EAAC,CAAC;wBAAA,QAAQ,GAAC,UAAU,CAAC;wBAAA,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;wBAAA,IAAI,GAAC,SAAS,CAAC;wBAAA,SAAS;oBAAA,CAAC;oBAC/G,IAAG,CAAC,YAAY,CAAC,OAAO;wBAAC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBAC7F,CAAC;gBACD,IAAG,IAAI,CAAC,QAAQ,EAAC,CAAC;oBAAA,QAAQ,GAAC,UAAU,CAAC;oBAAA,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBAAA,IAAI,GAAC,SAAS,CAAC;oBAAA,SAAS;gBAAA,CAAC;gBACpF,KAAK,CAAC,UAAU,GAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;gBAAA,KAAK,CAAC,MAAM,GAAC,WAAW,CAAC;gBAAA,MAAM;YACxG,CAAC;QACH,CAAC;QAAA,OAAM,KAAK,EAAC,CAAC;YAAA,KAAK,CAAC,MAAM,GAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,QAAQ,CAAC;YAAA,IAAG,KAAK,YAAY,qBAAqB;gBAAC,KAAK,CAAC,WAAW,GAAC,UAAU,CAAC;YAAA,KAAK,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAA,CAAC,CAAA,KAAK,CAAC,OAAO,CAAA,CAAC,CAAA,aAAa,CAAC,CAAC;YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,KAAG,UAAU,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,OAAO,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAAA,CAAC;gBACvT,CAAC;YACN,KAAK,CAAC,UAAU,GAAC,IAAI,CAAC,GAAG,EAAE,GAAC,SAAS,CAAC;YAAA,KAAK,CAAC,KAAK,GAAC,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACxF,MAAM,KAAK,GAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAC,KAAK,GAAC,KAAK,CAAC,QAAQ,GAAC,UAAU,CAAC,QAAQ,CAAC;YACjG,KAAK,CAAC,OAAO,GAAC,EAAC,UAAU,EAAC,KAAK,CAAC,UAAU,EAAC,cAAc,EAAC,OAAO,EAAC,aAAa,EAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAC,QAAQ,EAAC,KAAK,EAAC,WAAW,EAAC,KAAK,CAAC,WAAW,GAAC,UAAU,CAAC,WAAW,EAAC,YAAY,EAAC,KAAK,CAAC,YAAY,GAAC,UAAU,CAAC,YAAY;gBACpP,gBAAgB,EAAC,KAAK,CAAC,gBAAgB,KAAG,IAAI,CAAA,CAAC,CAAA,IAAI,CAAA,CAAC,CAAA,KAAK,CAAC,gBAAgB,GAAC,CAAC,UAAU,CAAC,gBAAgB,IAAE,CAAC,CAAC,EAAC,iBAAiB,EAAC,KAAK,CAAA,CAAC,CAAA,OAAO,GAAC,KAAK,CAAA,CAAC,CAAA,IAAI,EAAC,eAAe,EAAC,OAAO,CAAA,CAAC,CAAA,CAAC,CAAC,KAAK,CAAC,WAAW,GAAC,UAAU,CAAC,WAAW,CAAC,GAAC,CAAC,KAAK,CAAC,YAAY,GAAC,UAAU,CAAC,YAAY,CAAC,CAAC,GAAC,OAAO,CAAA,CAAC,CAAA,IAAI;gBACrR,OAAO,EAAC,iBAAiB,EAAC,SAAS,EAAC,WAAW,EAAC,SAAS,EAAC,oBAAoB,EAAC,OAAO,CAAA,CAAC,CAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,CAAA,CAAC,CAAA,IAAI,EAAC,mBAAmB,EAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAA,CAAC,CAAA,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,QAAQ,IAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAA,CAAC,CAAA,IAAI;gBACrT,cAAc,EAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,EAAC,QAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAE,MAAM,EAAC,IAAI,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAE,QAAQ,EAAC,aAAa,EAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,EAAC,CAAC;YAC9K,MAAM,IAAI,GAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAAA,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC;YAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,GAAC,KAAK,CAAC;YAClB,IAAG,IAAI,CAAC,MAAM,KAAG,WAAW,IAAE,OAAO,EAAC,CAAC;gBAAA,IAAG,CAAC;oBAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAC,OAAO,CAAC,CAAC;gBAAA,CAAC;gBAAA,MAAK,CAAC;oBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAC,iDAAiD,CAAC,CAAC;gBAAA,CAAC;YAAA,CAAC;YAC7J,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAG,WAAW,CAAA,CAAC,CAAA,MAAM,CAAA,CAAC,CAAA,MAAM,EAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,IAAI,CAAC,KAAM,CAAC;IACrB,CAAC;IACO,aAAa,KAAa,OAAQ,IAAI,CAAC,OAAO,CAAC,QAA2C,EAAE,KAAK,IAAE,EAAE,CAAC,CAAA,CAAC;IACvG,SAAS,CAAC,KAAW,IAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAU,CAAC,CAAA,CAAC;IAC/G,KAAK,CAAC,MAAM,CAAC,KAAW,EAAC,GAAW;QAClC,IAAG,KAAK,CAAC,MAAM,KAAG,WAAW;YAAC,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;QACxI,MAAM,IAAI,GAAC,UAAU,CAAC,KAAK,CAAC,EAAC,IAAI,EAAC,KAAK,CAAC,IAAI,EAAC,KAAK,EAAC,CAAC,oCAAoC,CAAC,EAAC,OAAO,EAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,MAAM,CAAC,EAAC,UAAU,EAAC,KAAK,CAAC,UAAU,EAAC,QAAQ,EAAC,KAAK,EAAC,CAAC,CAAC;QACnM,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAC,GAAG,IAAE,KAAK,CAAC,GAAG,EAAC,IAAI,EAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAqC,EAAE;QACpE,IAAG,IAAI,CAAC,MAAM,IAAE,IAAI,CAAC,OAAO,CAAC,OAAO;YAAC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC9G,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAC,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAC,OAAO,CAAC;YAAC,IAAI,CAAC,SAAS,CAAC,KAAK,GAAC,OAAO,CAAC,KAAK,IAAE,EAAC,OAAO,EAAC,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,CAAC;QAC5F,IAAG,OAAO,CAAC,MAAM;YAAC,IAAI,CAAC,MAAM,GAAC,OAAO,CAAC,MAAM,CAAC;QAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,GAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,IAAE,EAAE,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,GAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,IAAE,EAAE,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,GAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAG,OAAO,IAAE,OAAO,CAAC,OAAO,EAAE,aAAa,KAAG,IAAI,CAAC;QACtG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,GAAC,IAAI,CAAC,OAAO,CAAC,IAAI,KAAG,OAAO,CAAA,CAAC,CAAA,OAAO,CAAA,CAAC,CAAA,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACjG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,GAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAC,SAAS,CAAC;QAAA,IAAI,CAAC,KAAK,GAAC,SAAS,CAAC;QAAA,IAAI,CAAC,MAAM,GAAC,EAAE,CAAC;QAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QACrF,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,GAAC,CAAC,CAAC;QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAC,CAAC,CAAC;QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,GAAC,CAAC,CAAC;QAAA,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,GAAC,CAAC,CAAC;QACrI,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;IACD,KAAK,CAAC,KAAK,KAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA,CAAC;CAC/D"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ export function goalCriteria(goal) {
12
12
  const words = { one: 1, two: 2, three: 3, four: 4, five: 5, six: 6, seven: 7, eight: 8, nine: 9, ten: 10 };
13
13
  const amount = count ? (words[count] ?? Number(count)) : 0;
14
14
  if (amount > 0 && amount <= 1000)
15
- criteria.push({ type: 'extraction_count', min: amount, max: amount });
15
+ criteria.push({ type: 'extraction_count', min: 0, max: amount });
16
16
  }
17
17
  return criteria;
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"goalCriteria.js","sourceRoot":"","sources":["../../src/agent/goalCriteria.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,YAAY,CAAC,IAAW;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,gBAAgB,GAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAC,uGAAuG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvI,MAAM,UAAU,GAAC,oFAAoF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjH,MAAM,QAAQ,GAAC,gHAAgH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3I,IAAG,gBAAgB,IAAE,CAAC,aAAa,IAAE,CAAC,UAAU,IAAE,CAAC,QAAQ;QAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,kBAAkB,EAAC,CAAC,CAAC;IACrG,IAAG,0FAA0F,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,CAAC;QACxG,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,oBAAoB,EAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAC,IAAI,CAAC,KAAK,CAAC,6EAA6E,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QAC1H,MAAM,KAAK,GAAuB,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,EAAC,EAAE,EAAC,CAAC;QAC1G,MAAM,MAAM,GAAC,KAAK,CAAA,CAAC,CAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC;QACnD,IAAG,MAAM,GAAC,CAAC,IAAE,MAAM,IAAE,IAAI;YAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,kBAAkB,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,MAAM,EAAC,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"goalCriteria.js","sourceRoot":"","sources":["../../src/agent/goalCriteria.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,YAAY,CAAC,IAAW;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,gBAAgB,GAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAC,uGAAuG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvI,MAAM,UAAU,GAAC,oFAAoF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjH,MAAM,QAAQ,GAAC,gHAAgH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3I,IAAG,gBAAgB,IAAE,CAAC,aAAa,IAAE,CAAC,UAAU,IAAE,CAAC,QAAQ;QAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,kBAAkB,EAAC,CAAC,CAAC;IACrG,IAAG,0FAA0F,CAAC,IAAI,CAAC,IAAI,CAAC,EAAC,CAAC;QACxG,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,oBAAoB,EAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAC,IAAI,CAAC,KAAK,CAAC,6EAA6E,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;QAC1H,MAAM,KAAK,GAAuB,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,EAAC,EAAE,EAAC,CAAC;QAC1G,MAAM,MAAM,GAAC,KAAK,CAAA,CAAC,CAAA,CAAC,KAAK,CAAC,KAAK,CAAC,IAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC;QACnD,IAAG,MAAM,GAAC,CAAC,IAAE,MAAM,IAAE,IAAI;YAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,kBAAkB,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,MAAM,EAAC,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -198,15 +198,38 @@ export class NetworkGuardProxy {
198
198
  if (!this.permitted(url))
199
199
  throw new Error('Origin blocked by local browser policy');
200
200
  const addresses = await this.destinations(url.hostname);
201
+ if (response.destroyed || request.socket.destroyed)
202
+ return;
201
203
  const headers = { ...request.headers, host: url.host };
202
204
  delete headers['proxy-authorization'];
203
205
  delete headers['proxy-connection'];
204
- const upstream = requestHttp({ hostname: url.hostname.replace(/^\[|\]$/g, ''), ...this.connectionOptions(url.hostname, addresses), port: Number(url.port) || 80, method: request.method, path: `${url.pathname}${url.search}`, headers, agent: this.agent }, incoming => {
205
- response.writeHead(incoming.statusCode ?? 502, incoming.statusMessage, incoming.headers);
206
- incoming.pipe(response);
207
- });
208
- upstream.on('error', () => this.deny(response, 502));
209
- request.pipe(upstream);
206
+ const options = { hostname: url.hostname.replace(/^\[|\]$/g, ''), ...this.connectionOptions(url.hostname, addresses), port: Number(url.port) || 80, method: request.method, path: `${url.pathname}${url.search}`, headers, agent: this.agent };
207
+ const retryableRead = ['GET', 'HEAD'].includes(request.method ?? '') && !headers['transfer-encoding'] && (!headers['content-length'] || headers['content-length'] === '0');
208
+ const send = (retried = false) => {
209
+ const upstream = requestHttp(options, incoming => {
210
+ response.writeHead(incoming.statusCode ?? 502, incoming.statusMessage, incoming.headers);
211
+ incoming.pipe(response);
212
+ });
213
+ const abortIfClientClosed = () => { if (!response.writableFinished)
214
+ upstream.destroy(); };
215
+ request.socket.once('close', abortIfClientClosed);
216
+ response.once('close', abortIfClientClosed);
217
+ upstream.once('close', () => { request.socket.off('close', abortIfClientClosed); response.off('close', abortIfClientClosed); });
218
+ upstream.on('error', error => {
219
+ if (response.destroyed || request.socket.destroyed)
220
+ return;
221
+ if (!retried && !response.headersSent && retryableRead && upstream.reusedSocket && error.code === 'ECONNRESET') {
222
+ send(true);
223
+ return;
224
+ }
225
+ this.deny(response, 502);
226
+ });
227
+ if (retryableRead)
228
+ upstream.end();
229
+ else
230
+ request.pipe(upstream);
231
+ };
232
+ send();
210
233
  }
211
234
  catch {
212
235
  this.deny(response);
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkGuardProxy.js","sourceRoot":"","sources":["../../src/browser/NetworkGuardProxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NetworkGuardProxy.js","sourceRoot":"","sources":["../../src/browser/NetworkGuardProxy.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,7 @@ export class VariableResolver {
44
44
  return result
45
45
  .replace(/([?&#])([^=?&#\s"'<>()[\]]+)=([^&#\s"'<>),}\]]*)/g, (match, separator, name) => sensitiveQueryParameter(name) ? `${separator}${name}=REDACTED` : match)
46
46
  .replace(/\bBearer\s+[A-Za-z0-9._~+/-]{12,}={0,2}/gi, 'Bearer [redacted]')
47
+ .replace(/(?:github_pat_[a-zA-Z0-9_-]{20,}|gh[pour]_[a-zA-Z0-9_-]{20,}|ghs_[a-zA-Z0-9_.-]{20,}|gl(?:pat|oas|dt|rtr|rt|cbt|ptt|ft|imt|agent|wt|soat|ffct)-[a-zA-Z0-9_-]{16,}|xox[a-z]-[a-zA-Z0-9_-]{10,}|x(?:app|wfp)-[a-zA-Z0-9_-]{10,})/g, '[redacted key]')
47
48
  .replace(/sk-[a-zA-Z0-9_-]{16,}/g, '[redacted key]');
48
49
  }
49
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VariableResolver.js","sourceRoot":"","sources":["../../src/profile/VariableResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VariableResolver.js","sourceRoot":"","sources":["../../src/profile/VariableResolver.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,30 @@ keys, cookies, or user data.
40
40
 
41
41
  ## Recent local gate results
42
42
 
43
+ The v0.2.2 release-candidate working tree based on `main` at `5a59f40` passed
44
+ `FCU_BROWSER_CHANNEL=chrome npm run validate` on 26 September 2026: 135/135 tests
45
+ in 216.39 seconds, type-check/build, security scan (265 worktree files, 267
46
+ historical paths, 1,202 historical blobs; no recognized credentials or
47
+ private-state paths), and npm audit with zero vulnerabilities. Environment:
48
+ macOS `26.6`, Apple Silicon, Node `25.9.0`, and system Chrome `154.0.8037.57`.
49
+ No live model-provider request was made. `FCU_BROWSER_CHANNEL=chrome npm run
50
+ lab:smoke` also passed: 34 pages, 755 accessible controls, eight practice cards,
51
+ keyboard interaction, responsive widths 320/390/768/1440, and no console errors.
52
+
53
+ Commit `ea1ebae` passed `FCU_BROWSER_CHANNEL=chrome npm run validate` on 26
54
+ September 2026: 134/134 tests in 180.99 seconds, type-check and build, security
55
+ scan (264 worktree files, 266 historical paths, 1,183 unique historical blobs;
56
+ no recognized credentials or private-state paths), and npm audit with zero
57
+ vulnerabilities. Environment: macOS `26.6`, Node `25.9.0`, and system Chrome
58
+ `154.0.8037.57`. No live model-provider request was made.
59
+
60
+ The v0.2.1 release candidate at `a9b2362` passed the same gate from a clean Git
61
+ clone on 26 September 2026: 134/134 tests in 179.76 seconds, type-check/build,
62
+ security scan (265 worktree files, 267 historical paths, 1,197 unique historical
63
+ blobs; no recognized credentials or private-state paths), and npm audit with
64
+ zero vulnerabilities. Environment: macOS `26.6`, Node `25.9.0`, and system
65
+ Chrome `154.0.8037.57`. No live model-provider request was made.
66
+
43
67
  The v0.2.0 release candidate, based on main commit `26fc0c6` with the version,
44
68
  README, changelog and homepage updates, passed
45
69
  `FCU_BROWSER_CHANNEL=chrome npm run validate` on 26 September 2026: 130/130
@@ -312,6 +336,21 @@ zero vulnerabilities. Environment: macOS `26.6`, Node `25.9.0`, and system
312
336
  Chrome `154.0.8037.57`. Tests used local fixtures and provider contracts; no live
313
337
  model-provider request was made. GitHub Actions remained untouched.
314
338
 
339
+ The working tree later committed as `03c8ea7` passed
340
+ `FCU_BROWSER_CHANNEL=chrome npm run validate` on 26 September 2026: 133/133
341
+ tests in 180.21 seconds, type-check and build, security scan (264 worktree files,
342
+ 266 historical paths, 1,175 unique historical blobs; no recognized credentials
343
+ or private-state paths), and npm audit with zero vulnerabilities. Environment:
344
+ macOS `26.6`, Node `25.9.0`, and system Chrome `154.0.8037.57`. Tests used local
345
+ fixtures and provider contracts; no live model-provider request was made.
346
+ GitHub Actions remained untouched.
347
+
348
+ The same working tree passed the gate on Node `22.13.0`: 133/133 tests in
349
+ 177.86 seconds, type-check and build, the same history scan and npm audit with
350
+ zero vulnerabilities. Environment: macOS `26.6`/Apple Silicon and system Chrome
351
+ `154.0.8037.57`. Node emitted its expected experimental `node:sqlite` warning.
352
+ GitHub Actions remained untouched.
353
+
315
354
  The published npm tarball was fetched with `npm pack free-computer-use@0.1.0`
316
355
  and installed into a new temporary npm prefix. Its SHA-256 matched the
317
356
  published checksum. With `LLM_API_KEY` empty and an isolated `FCU_DATA_DIR`,
package/docs/MCP.md CHANGED
@@ -26,11 +26,45 @@ profiles, history and downloads stay in the configured local data directory.
26
26
  Do not add API keys to an MCP config or share the MCP process with an
27
27
  untrusted host.
28
28
 
29
+ ## Install from npm
30
+
31
+ Install the published package globally:
32
+
33
+ ```sh
34
+ npm install --global free-computer-use@0.2.2
35
+ ```
36
+
37
+ Create a dedicated working directory for the MCP process and put provider
38
+ settings in its `.env` file. The process reads `.env` from its configured
39
+ working directory; use the [provider setup guide](PROVIDERS.md), and do not put
40
+ API keys in the host configuration. Set `FCU_DATA_DIR` to a separate dedicated
41
+ local directory for browser state and history.
42
+
43
+ ```json
44
+ {
45
+ "mcpServers": {
46
+ "free-computer-use": {
47
+ "command": "agent",
48
+ "args": ["mcp"],
49
+ "cwd": "/absolute/path/to/free-computer-use-config",
50
+ "env": {
51
+ "FCU_BROWSER_CHANNEL": "chrome",
52
+ "FCU_DATA_DIR": "/absolute/path/to/free-computer-use-data"
53
+ }
54
+ }
55
+ }
56
+ }
57
+ ```
58
+
59
+ Replace both paths with local absolute paths. If the desktop host cannot find
60
+ global npm commands on its `PATH`, set `command` to the absolute path of the
61
+ installed `agent` executable. Restart the host after changing its configuration.
62
+
29
63
  ## Run from a source checkout
30
64
 
31
- Use Node.js 22.13 or later, npm and an installed browser. The checked platform
32
- is macOS 26.6 on Apple Silicon with Node 25.9.0 and system Chrome 154.0.8037.57.
33
- Other platforms and browser combinations remain unverified.
65
+ Use Node.js 22.13 or later, npm and an installed browser. The full suite passed
66
+ on macOS 26.6/Apple Silicon with system Chrome 154.0.8037.57 on Node 22.13.0
67
+ and 25.9.0. Other platforms and browser combinations remain unverified.
34
68
 
35
69
  ```sh
36
70
  git clone https://github.com/OthmaneBlial/FreeComputerUse.git
@@ -75,7 +109,9 @@ sensitive-form approvals, refusal before the site receives a request, malformed
75
109
  URL rejection, and the modern `stdio` transport. A live UI check also connected
76
110
  the built CLI to MCP Inspector 2.8.0 over `stdio`, displayed the site's form
77
111
  elicitation and declined it. The task failed safely with zero model calls and
78
- zero requests to the local fixture. This verifies the reference client only;
79
- compatibility with other desktop agent hosts remains unverified. The npm
80
- package is not published; use the source checkout until a public installation
81
- is verified.
112
+ zero requests to the local fixture. On 26 September 2026, the published
113
+ `free-computer-use@0.2.0` package was installed in a fresh prefix on Node
114
+ 22.13.0; the official TypeScript MCP client connected to `agent mcp` over
115
+ `stdio` and listed all four tools. That package smoke verifies launch and tool
116
+ discovery, not task execution or approvals through the published package.
117
+ Compatibility with other desktop agent hosts remains unverified.
@@ -35,4 +35,3 @@ Use this checklist for every npm or GitHub release. npm and GitHub publication a
35
35
  - [x] Include a SHA-256 checksum for the npm package asset; platform requirements are stated in the release notes.
36
36
  - [x] Download each release asset, verify the package checksum, install it in a fresh temporary directory, and rerun the CLI, doctor, and sandbox task smoke.
37
37
  - [x] Verify the public release page, both assets, download links, and matching npm version.
38
-
@@ -22,7 +22,7 @@ Chromium integration tests, real Flash runs and result-checked benchmark traces.
22
22
  | 42–48: modules, validation/security/injection, goal tracking, loops/hashes | Separate replaceable modules, fixed browser API, escaped untrusted content, preserved original goal, trusted criteria, max steps/repairs/repeated states/navigation checks |
23
23
  | 49–60: KPIs, benchmark suite, zero-call reuse, local intelligence, compact structured context | Metrics/reports; six local plus fourteen public scenarios; result oracles and provider-free compatible repeats; semantic workflows, local similarity/form mapping, JSON outputs, bounded completed-action summary |
24
24
  | 61–63: demo, README and diagrams | Real multi-page synthetic application plus contact/demo, broader free sandbox cases, runnable README and architecture diagram, actual UI screenshots |
25
- | 64–65: naming and developer experience | Existing workspace name retained; GitHub repo created; local npm install/config/dev, source and built CLI, browser install documented; public npm package not verified |
25
+ | 64–65: naming and developer experience | Existing workspace name retained; GitHub repo created; local and global npm install/config/dev, source and built CLI, browser install documented; local `0.2.2` candidate install, doctor and synthetic table task verified; published `0.2.0` MCP tool discovery verified |
26
26
  | 66–68: real tests, local website, failures | Chromium unit/integration/UI checks with local lab; missing/replaced/duplicate controls, delayed content, validation, frame/tab changes, approval rejection, schema/budget failures and repair |
27
27
  | 69–70: incremental phases and working MVP | Incremental main commits pushed. Actual API tasks open/observe/compress/plan/execute/verify/repair, print metrics and store traces |
28
28
  | 71–74: deterministic-first philosophy and compiler-like vision | Local strategies and workflow matching precede provider calls. Arbitrary-site permanent workflow transfer remains a longer-term goal |
@@ -1,6 +1,6 @@
1
1
  # Support matrix
2
2
 
3
- Updated 24 September 2026. This matrix separates code that exists, automated
3
+ Updated 26 September 2026. This matrix separates code that exists, automated
4
4
  contract coverage, and evidence from a real provider. An OpenAI-compatible URL
5
5
  does not prove that every service using that label accepts the same request.
6
6
 
@@ -32,13 +32,13 @@ parameters, endpoint and terms before use.
32
32
 
33
33
  | Area | Declared or implemented | Verified evidence | Limit |
34
34
  | --- | --- | --- | --- |
35
- | MCP host integration | Local `stdio` server, MCP TypeScript SDK `2.0.0`; tools start, inspect, follow/verify and stop a browser task. | On 24 September 2026, four focused tests passed with the official TypeScript MCP client. MCP Inspector 2.8.0 also connected to the built CLI over `stdio`, displayed site approval and declined it; the task failed with zero model calls and zero requests to the local fixture. | Only the reference Inspector client is verified; other desktop agent hosts remain unverified. Host must support form elicitation for approvals. No public npm install exists yet. |
36
- | Node.js | `package.json` declares an install floor of Node `>=22.13.0`; this does not certify that whole range. | A clean checkout installed with `npm ci --offline --no-audit --no-fund`, then passed `npm run validate` on Node `25.9.0`, macOS `26.6`, Apple Silicon and system Chrome `154.0.8037.57` on 24 September 2026. | Node `22.13.0`, other Node releases and Windows/Linux have not been validated. |
37
- | Browser engine | Playwright `1.63.0`; defaults to its matching Chromium. Optional `FCU_BROWSER_CHANNEL` selects installed Chrome/Edge to avoid a browser download. | System Chrome `154.0.8037.57` passed 102/102 serial tests and the full validation on 24 September 2026 (commit `d978b06`). `FCU_BROWSER_CHANNEL=chrome npm run demo -- --headed --contact` also completed seven local actions with zero model calls and exited cleanly. | Matching Playwright Chromium is absent. Playwright warns that non-bundled browsers may be incompatible. Other browser builds and operating systems remain unverified. No browser was downloaded. |
35
+ | MCP host integration | Local `stdio` server, MCP TypeScript SDK `2.0.0`; tools start, inspect, follow/verify and stop a browser task. | On 24 September 2026, four focused tests passed with the official TypeScript MCP client. MCP Inspector 2.8.0 connected to the built CLI, displayed site approval and declined it; the task failed with zero model calls and zero fixture requests. On 26 September, the published `free-computer-use@0.2.0` package launched from a fresh prefix on Node `22.13.0`; the official client listed all four tools over `stdio`. | The package smoke covers launch and tool discovery, not task execution through the published package. Inspector covers the built CLI. Other desktop hosts remain unverified; approvals require form elicitation. |
36
+ | Node.js | `package.json` declares an install floor of Node `>=22.13.0`; this does not certify every release in that range. | After the HTTP cancellation fix, the full gate passed 133/133 on Node `22.13.0` and `25.9.0` on 26 September 2026. The v0.2.1 release candidate passed 134/134 on Node `25.9.0`. The v0.2.2 release candidate passed `FCU_BROWSER_CHANNEL=chrome npm run validate` 135/135 on Node `25.9.0`, including type checks, build, history scan and npm audit (zero vulnerabilities). A fresh-prefix local tarball install reported `0.2.2`; `agent doctor` passed browser launch. The installed package completed the synthetic table task with one browser action, zero model calls and three data rows. Runtime: macOS `26.6`, Apple Silicon and system Chrome `154.0.8037.57`. | Other Node releases and Windows/Linux have not been validated. Node `22.13.0` emits the expected experimental `node:sqlite` warning. |
37
+ | Browser engine | Playwright `1.63.0`; defaults to its matching Chromium. Optional `FCU_BROWSER_CHANNEL` selects installed Chrome/Edge to avoid a browser download. | System Chrome `154.0.8037.57` passed the full 135/135 serial suite on Node `25.9.0` for v0.2.2, after 134/134 on v0.2.1 and 133/133 on Node `22.13.0` and `25.9.0` after proxy-cancellation changes. `FCU_BROWSER_CHANNEL=chrome npm run demo -- --headed --contact` also completed seven local actions with zero model calls and exited cleanly on 24 September 2026. | Matching Playwright Chromium is absent. Playwright warns that non-bundled browsers may be incompatible. Other browser builds and operating systems remain unverified. No browser was downloaded. |
38
38
  | Browser task behavior | DOM observation, bounded action plans, origin/action approvals, result checks and compatible workflow replay are implemented. A loopback-only Chromium DevTools Protocol connection attaches to page targets before navigation and checks redirect hops. A second loopback proxy enforces origin policy for HTTP(S)/WebSocket traffic, blocks private/reserved DNS answers and checks private IPv4 embedded in prefixes learned through `ipv4only.arpa`. The persistent Chromium profile disables WebRTC UDP that the proxy cannot carry. Explicit IP literals need exact origin approval. Ultra/`allowExternal` opts out of origin and private-address checks. Closing the active page cancels its run and pending approval. | On 24 September, the dashboard was changed to reuse one `Agent` and Chromium context between tasks, opening a fresh tab for each task. Regression checks confirm dashboard replay keeps the same context, all eight lab workflows replay in that context, and the persistent network proxy reapplies private-address policy when the mode changes. The clean serial full suite passed 101/101 on system Chrome `154.0.8037.57`, macOS `26.6`, Node `25.9.0`. Security cases include popup redirects, simulated DNS rebinding, reserved ranges, normal/Ultra behavior and approved/blocked WebSockets. A Chrome-originated WSS fixture returns a frame through the proxy; its generated local certificate is ignored. A separate opt-in `security:wss` smoke connected to Postman Echo with Chrome’s normal TLS validation and received its synthetic message. Synthetic DNS64 fixtures cover all six RFC 6052 prefix lengths; actual NAT64 discovery remains unverified. A local STUN receiver got no WebRTC UDP packets. | Before context reuse, relaunching Chrome `154.0.8037.57` with the same persistent profile caused a `SIGSEGV` on 23 September; the `.ips` report identifies `CrBrowserMain` and `EXC_BAD_ACCESS`. The dashboard now avoids this process boundary, and its full local regression suite passes. Reopening the same profile through a standalone Playwright process remains unverified. Matching Playwright Chromium is absent; no browser was downloaded. Live NAT64 discovery, other trusted WSS endpoints, non-HTTP traffic beyond the WebRTC STUN fixture, other browser builds, Windows/Linux and universal website success remain unverified. WebRTC services needing direct UDP may fail. |
39
39
  | Vision and canvas | Local screenshots/preview exist. | Screenshot paths are documented as local. | Images are not sent to the model; model vision and visual-only/canvas control are not implemented. |
40
- | npm package | Package metadata declares a CLI, ESM library entry point and global `agent` command; package name is `free-computer-use`. | A clean source archive passed offline install/build/pack. Its 130-file, approximately 1.14 MB candidate installed offline in a separate temporary project; CLI version/help/doctor passed. The interactive CLI and installed dashboard each completed the read-only table workflow with one action and zero model calls. Dashboard checks passed HTTP 200, keyboard focus, 320/390/768/1440 px without horizontal overflow, and zero console errors. | `npm view free-computer-use@0.1.0 version` returns 404. The package is not published, so registry installation and public integrity are unverified. `0.1.0` remains manifest metadata, not a published release. |
41
- | GitHub release / binary | No release tag or GitHub release was present at audit time. | None. | No downloadable release binary or archive is currently offered. |
40
+ | npm package | The ESM package exposes a library and global `agent` command. | npm reports `0.2.1` as `latest` with integrity `sha512-s9I/ibu5+PyE0lmAXQfTql9Zi/S2tFCfoul2o/m/wIi3R3SdlQ1//WXLTQ/d39kpwhBqgcSqdPIhkXPWLCpetQ==`; the downloaded registry tarball matches the checked candidate byte for byte. A fresh-prefix install on Node `25.9.0` passed `agent doctor` and Chrome launch. Page reading and five-link extraction each used one browser action and zero model calls. The same checked package completed an installed-dashboard page-read task after site approval with no page errors. | Package tasks and runtime were checked on macOS `26.6`/Apple Silicon with system Chrome `154.0.8037.57`; other OS/browser combinations remain unverified. MCP package smoke covers discovery, not task execution or approvals. |
41
+ | GitHub release / archive | Public release `v0.2.1`, published 26 September 2026. | Release includes `free-computer-use-0.2.1.tgz` and `SHA256SUMS`; SHA-256 `4f97553bc2595cdca11deb2090350798ccff6c1d3e8b627247577c4385aee567` matches the npm registry download. Both assets were downloaded; the checksum passed, then the archive installed in a fresh prefix and passed `agent doctor` and a synthetic five-link extraction. | Archive requires Node.js, npm and a supported installed browser; no standalone native executable is offered. |
42
42
  | GitHub Actions | No workflow files are tracked in the checkout. | `git ls-files '.github/workflows/*'` returned no workflow; no workflow was activated or dispatched. `docs/LOCAL_VALIDATION.md` records the owner instruction. | Local checks remain the validation route unless the owner changes that instruction. |
43
43
 
44
44
  ## Validation snapshot for this implementation session
@@ -61,11 +61,11 @@ results.
61
61
  | Threat | Current controls in this checkout | Evidence | Residual risk and follow-up |
62
62
  | --- | --- | --- | --- |
63
63
  | A page uses prompt injection to redirect the task, reveal profile data or request an unsafe action. | Page content is marked untrusted; observation, repair fragments and table/link text omit visually hidden descendants; action plans use a fixed schema; profile values are resolved locally; default sensitive-action checks require confirmation; completion checks are independently verified. | Provider boundary tests; `tests/browser.test.ts` and `tests/actions.test.ts` cover hidden page text; `tests/security.test.ts` covers approval, post-approval target replacement and trusted completion criteria. | A model can still misunderstand a task and page content can deceive a person. Avoid Ultra mode; in normal mode use `--confirmation always` for high-impact work. |
64
- | A page, redirect, frame, fetch or WebSocket reaches an unapproved origin. | Playwright routing checks HTTP requests; a loopback-only Chromium DevTools Protocol connection intercepts page-target requests and redirect hops. A second loopback proxy applies origin policy to HTTP, HTTPS tunnels and WebSockets, resolves hostnames and dials the vetted numeric address. Normal mode approves document origins; redirected subresources need an approved origin. Private/reserved DNS answers and private IPv4 embedded in the NAT64 prefix discovered through `ipv4only.arpa` are blocked. The persistent profile sets `webrtc.ip_handling_policy=disable_non_proxied_udp`. Ultra/`allowExternal` opts out of origin and private-address checks. Unsupported protocols and embedded URL credentials are rejected at the dashboard and agent boundaries before a trace is stored. IPv6 literals are canonicalized for allowlist comparison while preserving exact ports. | `tests/security.test.ts` covers credentialed initial URLs, simulated public-to-loopback DNS rebinding before HTTP and TLS-tunnel connection, private IPv4/IPv6 DNS rejection before target receipt, synthetic DNS64 private/public IPv4 classification for each RFC 6052 prefix length, normal/Ultra separation, exact-port IPv6 origin matching, cross-origin fetch and plain WebSocket denial before server receipt, approved WebSocket forwarding, browser-originated approved WSS frame delivery and unapproved WSS denial before the target receives TCP, cleartext SSH-style CONNECT denial before dialing, WebRTC STUN UDP blocked before a local receiver, preservation of an unrelated browser preference, frame-grant cancellation, main-page redirect rejection/approval, default-deny behavior for a bare `Browser`, and popup redirect denial/approval. The local WSS fixture ignores errors from its generated certificate. Separately, `FCU_BROWSER_CHANNEL=chrome npm run security:wss` passed on 24 September: Chrome used default TLS validation with Postman Echo and received a fixed synthetic payload. This validates one endpoint/runtime only. The dashboard test confirms credentialed starting URLs and allowlist entries are rejected before an agent is created. Browser cases pass against installed Chrome `154.0.8037.57`. | Live NAT64 discovery is unverified: the current system resolver returned only IPv4 A records for `ipv4only.arpa`. Other non-HTTP traffic beyond the WebRTC STUN fixture and other browser builds remain unverified. Sites that need unproxied WebRTC UDP may fail. Explicit IP literals in normal mode still rely on exact origin approval. HTTP is also permitted. |
64
+ | A page, redirect, frame, fetch or WebSocket reaches an unapproved origin. | Playwright routing checks HTTP requests; a loopback-only Chromium DevTools Protocol connection intercepts page-target requests and redirect hops. A second loopback proxy applies origin policy to HTTP, HTTPS tunnels and WebSockets, resolves hostnames and dials the vetted numeric address. Normal mode approves document origins; redirected subresources need an approved origin. Private/reserved DNS answers and private IPv4 embedded in the NAT64 prefix discovered through `ipv4only.arpa` are blocked. The proxy drops requests canceled during DNS and aborts active upstream HTTP when the browser socket closes; a server can still receive a request before cancellation. The persistent profile sets `webrtc.ip_handling_policy=disable_non_proxied_udp`. Ultra/`allowExternal` opts out of origin and private-address checks. Unsupported protocols and embedded URL credentials are rejected at the dashboard and agent boundaries before a trace is stored. IPv6 literals are canonicalized for allowlist comparison while preserving exact ports. | `tests/security.test.ts` covers credentialed initial URLs, simulated public-to-loopback DNS rebinding before HTTP and TLS-tunnel connection, cancellation during DNS before upstream dispatch, upstream abort after browser disconnect, private IPv4/IPv6 DNS rejection before target receipt, synthetic DNS64 private/public IPv4 classification for each RFC 6052 prefix length, normal/Ultra separation, exact-port IPv6 origin matching, cross-origin fetch and plain WebSocket denial before server receipt, approved WebSocket forwarding, browser-originated approved WSS frame delivery and unapproved WSS denial before the target receives TCP, cleartext SSH-style CONNECT denial before dialing, WebRTC STUN UDP blocked before a local receiver, preservation of an unrelated browser preference, frame-grant cancellation, main-page redirect rejection/approval, default-deny behavior for a bare `Browser`, and popup redirect denial/approval. The local WSS fixture ignores errors from its generated certificate. Separately, `FCU_BROWSER_CHANNEL=chrome npm run security:wss` passed on 24 September: Chrome used default TLS validation with Postman Echo and received a fixed synthetic payload. This validates one endpoint/runtime only. The dashboard test confirms credentialed starting URLs and allowlist entries are rejected before an agent is created. Browser cases pass against installed Chrome `154.0.8037.57`. | Live NAT64 discovery is unverified: the current system resolver returned only IPv4 A records for `ipv4only.arpa`. Other non-HTTP traffic beyond the WebRTC STUN fixture and other browser builds remain unverified. Sites that need unproxied WebRTC UDP may fail. Explicit IP literals in normal mode still rely on exact origin approval. HTTP is also permitted. |
65
65
  | A click or form submission causes a purchase, message, deletion or other irreversible change. | Under the default `sensitive` policy, explicit `sensitive` flags and submit actions are gated; common risky labels and form semantics are heuristically detected; the approved target is fingerprinted; uncertain effects stop automated repair. | `sensitiveReason` and executor tests cover changed targets and approval/rejection behavior. | Text heuristics cannot recognize every deceptive or ambiguous control. Prefer normal mode with `--confirmation always`; visually review the action before approval. |
66
66
  | A remote site or another browser origin takes over the local dashboard. | Loopback binding, exact Host and Origin checks, random HttpOnly SameSite cookie, CSRF header, no CORS, restrictive CSP and bounded JSON request bodies. | Local UI tests cover missing session, cross-origin mutation rejection and successful same-origin control. | A process running as the same OS user can inspect or control local state. The dashboard is not a multi-user service; do not expose it through a tunnel or reverse proxy. |
67
67
  | A profile path, upload alias or download receipt escapes its allowed directory. | Vault schemas reject prototype keys and unknown top-level settings; profile imports reject symlink files and save through a same-directory temporary file plus rename; upload values must be explicit `files.*` aliases; downloaded paths are checked with `realpath` and a directory boundary before serving. On macOS, profile/download files use POSIX `0600` and their directories use `0700`. | `tests/profile.test.ts` covers invalid import preservation, failed filesystem replacement preserving old bytes, symlink refusal and POSIX modes; `tests/actions.test.ts` covers upload alias confinement, download symlink rejection and download modes. | Files are not encrypted and a user can intentionally choose sensitive files. Windows/Linux permission behavior remains unverified. Keep profiles and downloads in an OS-protected account. |
68
- | Secrets or session data appear in provider prompts, traces, errors or screenshots. | Known vault values and `sk-`-shaped strings are redacted; environment credentials are stripped before subscription CLIs; traces and profiles are owner-only on supported filesystems; hidden, password, payment-card, password-manager and one-time-code input values are omitted from record extraction. | Provider key-error tests, CLI environment tests, record-extraction redaction tests and security tests. | Redaction patterns cannot find every secret. Provider API requests intentionally contain task/page context. Local browser profiles, backups and history are plaintext; inspect before sharing and follow retention work in Phase 2.3. |
68
+ | Secrets or session data appear in provider prompts, traces, errors or screenshots. | Known vault values, recognized GitHub/GitLab/Slack token prefixes and `sk-`-shaped strings are redacted; environment credentials are stripped before subscription CLIs; traces and profiles are owner-only on supported filesystems; hidden, password, payment-card, password-manager and one-time-code input values are omitted from record extraction. | `tests/actions.test.ts` covers known provider token prefixes and short lookalikes; provider key-error tests, CLI environment tests, record-extraction redaction tests and security tests cover related controls. | Redaction patterns cannot find every secret. Provider API requests intentionally contain task/page context. Local browser profiles, backups and history are plaintext; inspect before sharing and follow retention work in Phase 2.3. |
69
69
  | A replay repeats an obsolete action or falsely reports success. | Replay has no model, checks current page/workflow compatibility, retains normal permission gates and verifies independent completion criteria. The dashboard reuses its browser context across tasks but starts each task in a fresh tab. | Workflow and completion-oracle tests in `tests/agent.test.ts`, `tests/security.test.ts`, `tests/lab.test.ts` and `tests/ui.test.ts`; the serial suite passed 100/100 on system Chrome `154.0.8037.57` on 24 September 2026. | Similar page structure does not prove identical intent. Review learned workflows and final results. Standalone relaunch of Chrome with the same profile and bundled Playwright Chromium remain unverified. |
70
70
  | A dependency, CLI or release artifact changes behavior or contains a vulnerability. | Lockfile, local production `npm audit`, pattern-based tracked-secret scan and explicit support matrix. GitHub Actions is intentionally disabled by owner instruction. | Local checks recorded in `docs/SUPPORT_MATRIX.md`; no remote workflow is claimed. | Scanners are incomplete; manual releases need repeatable local gates and artifact verification. Address in Phase 4.3 and Phase 6. |
71
71
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "free-computer-use",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Local-first AI browser automation with Playwright and user-approved actions.",
5
5
  "homepage": "https://othmaneblial.github.io/FreeComputerUse/",
6
6
  "repository": {