claude-code-runner 0.2.10 → 0.2.11

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/README.md CHANGED
@@ -227,6 +227,7 @@ Create a `claude-run.config.json` file (see `claude-run.config.example.json` for
227
227
  "forwardSshKeys": true,
228
228
  "forwardGpgKeys": true,
229
229
  "forwardSshAgent": true,
230
+ "forwardGpgAgent": false,
230
231
  "enableGpgSigning": false
231
232
  }
232
233
  ```
@@ -254,6 +255,7 @@ Create a `claude-run.config.json` file (see `claude-run.config.example.json` for
254
255
  - `forwardSshKeys`: Forward SSH keys from `~/.ssh` to container (default: true)
255
256
  - `forwardGpgKeys`: Forward GPG keys from `~/.gnupg` to container (default: true)
256
257
  - `forwardSshAgent`: Forward SSH agent for passphrase-protected keys (default: true)
258
+ - `forwardGpgAgent`: Forward GPG agent for passphrase-protected GPG keys (default: false, requires explicit enabling)
257
259
  - `enableGpgSigning`: Enable GPG commit signing in container (default: false)
258
260
 
259
261
  #### Mount Configuration
@@ -362,7 +364,9 @@ Claude Code Runner now supports Podman as an alternative to Docker. The tool aut
362
364
  - **Custom socket paths**: Use the `dockerSocketPath` configuration option to specify a custom socket
363
365
  - **Environment variable**: Set `DOCKER_HOST` to override socket detection
364
366
 
365
- > **Important**: If you're using Podman in rootless mode, you need to enable the Podman socket service:
367
+ > [!IMPORTANT]
368
+ >
369
+ > If you're using Podman in rootless mode, you need to enable the Podman socket service:
366
370
  >
367
371
  > ```bash
368
372
  > systemctl --user enable --now podman.socket
@@ -410,6 +414,8 @@ claude-run # SSH agent is forwarded to container
410
414
 
411
415
  The container will use your host's SSH agent, so you don't need to enter the passphrase again.
412
416
 
417
+ > [!NOTE]
418
+ >
413
419
  > **Troubleshooting: SSH Agent Connection Failed**
414
420
  >
415
421
  > If running `ssh-add -l` inside the container shows "communication with agent failed":
@@ -427,17 +433,35 @@ The container will use your host's SSH agent, so you don't need to enter the pas
427
433
 
428
434
  #### GPG Key Support
429
435
 
430
- GPG keys from `~/.gnupg` are also automatically forwarded to the container. However, **GPG commit signing is disabled by default** to avoid passphrase prompts in non-interactive environments.
436
+ GPG keys from `~/.gnupg` are automatically forwarded to the container. **GPG commit signing is disabled by default** to avoid passphrase prompts in non-interactive environments.
431
437
 
432
- **To enable GPG commit signing**, add this to your `claude-run.config.json`:
438
+ **Three ways to use GPG:**
433
439
 
434
- ```json
435
- {
436
- "enableGpgSigning": true
437
- }
438
- ```
440
+ 1. **Direct GPG key usage (recommended for keys without passphrase)**
441
+ - GPG key files are automatically copied to the container
442
+ - No additional configuration needed
443
+ - Only works for keys without a passphrase
444
+
445
+ 2. **GPG agent forwarding (recommended for password-protected keys)**
446
+ - Enable in your config:
447
+ ```json
448
+ {
449
+ "forwardGpgAgent": true,
450
+ "enableGpgSigning": true
451
+ }
452
+ ```
453
+ - Host GPG agent is automatically forwarded when container starts
454
+ - Supports password-protected keys (no need to enter passphrase in container)
455
+ - Requires `gpg-agent` running on your host machine
439
456
 
440
- > **Note**: GPG signing requires a GPG key without a passphrase, or proper GPG agent configuration. For security, consider using SSH commit signing instead.
457
+ 3. **Completely disable GPG signing**
458
+ - Default behavior (if you don't set `enableGpgSigning`)
459
+ - GPG signing will be disabled even if your host `.gitconfig` has `commit.gpgsign = true`
460
+ - This prevents signing failures in containerized environments where `/dev/tty` is not accessible
461
+
462
+ > [!NOTE]
463
+ >
464
+ > For security, consider using SSH commit signing (if your Git server supports it). This way you don't need to configure GPG at all.
441
465
 
442
466
  #### Disabling SSH/GPG Forwarding
443
467
 
@@ -447,7 +471,8 @@ If you don't want to forward your keys, you can disable this feature:
447
471
  {
448
472
  "forwardSshKeys": false,
449
473
  "forwardGpgKeys": false,
450
- "forwardSshAgent": false
474
+ "forwardSshAgent": false,
475
+ "forwardGpgAgent": false
451
476
  }
452
477
  ```
453
478
 
package/README.zh-Hans.md CHANGED
@@ -247,6 +247,7 @@ claud-run update # 别名
247
247
  "forwardSshKeys": true,
248
248
  "forwardGpgKeys": true,
249
249
  "forwardSshAgent": true,
250
+ "forwardGpgAgent": false,
250
251
  "enableGpgSigning": false
251
252
  }
252
253
  ```
@@ -274,6 +275,7 @@ claud-run update # 别名
274
275
  - `forwardSshKeys`: 将 `~/.ssh` 中的 SSH 密钥转发到容器(默认:true)
275
276
  - `forwardGpgKeys`: 将 `~/.gnupg` 中的 GPG 密钥转发到容器(默认:true)
276
277
  - `forwardSshAgent`: 转发 SSH agent 以支持带密码的密钥(默认:true)
278
+ - `forwardGpgAgent`: 转发 GPG agent 以支持带密码的 GPG 密钥(默认:false,需显式启用)
277
279
  - `enableGpgSigning`: 在容器中启用 GPG 提交签名(默认:false)
278
280
 
279
281
  #### 挂载配置
@@ -382,7 +384,9 @@ Claude Code Runner 还支持 Podman 作为 Docker 的替代方案。该工具通
382
384
  - **自定义套接字路径**: 使用 `dockerSocketPath` 配置选项指定自定义套接字
383
385
  - **环境变量**: 设置 `DOCKER_HOST` 来覆盖套接字检测
384
386
 
385
- > **重要提示**:如果你使用 Podman 的 rootless(无根)模式,需要启用 Podman socket 服务:
387
+ > [!IMPORTANT]
388
+ >
389
+ > 如果你使用 Podman 的 rootless(无根)模式,需要启用 Podman socket 服务:
386
390
  >
387
391
  > ```bash
388
392
  > systemctl --user enable --now podman.socket
@@ -430,6 +434,8 @@ claude-run # SSH agent 会被转发到容器
430
434
 
431
435
  容器将使用宿主机的 SSH agent,因此你无需再次输入密码。
432
436
 
437
+ > [!NOTE]
438
+ >
433
439
  > **故障排除:SSH Agent 无法连接**
434
440
  >
435
441
  > 如果在容器内运行 `ssh-add -l` 显示 "communication with agent failed":
@@ -447,17 +453,35 @@ claude-run # SSH agent 会被转发到容器
447
453
 
448
454
  #### GPG 密钥支持
449
455
 
450
- 来自 `~/.gnupg` 的 GPG 密钥也会自动转发到容器。但是,**GPG 提交签名默认是禁用的**,以避免在非交互式环境中出现密码提示。
456
+ 来自 `~/.gnupg` 的 GPG 密钥会自动转发到容器。**GPG 提交签名默认是禁用的**,以避免在非交互式环境中出现密码提示。
451
457
 
452
- **要启用 GPG 提交签名**,在 `claude-run.config.json` 中添加:
458
+ **三种使用方式:**
453
459
 
454
- ```json
455
- {
456
- "enableGpgSigning": true
457
- }
458
- ```
460
+ 1. **直接使用 GPG 密钥(推荐用于无密码密钥)**
461
+ - GPG 密钥文件自动复制到容器
462
+ - 无需额外配置
463
+ - 仅适用于没有密码的 GPG 密钥
464
+
465
+ 2. **通过 GPG agent 转发(推荐用于密码保护的密钥)**
466
+ - 需要在配置中启用:
467
+ ```json
468
+ {
469
+ "forwardGpgAgent": true,
470
+ "enableGpgSigning": true
471
+ }
472
+ ```
473
+ - 宿主机 GPG agent 会在容器启动时自动转发
474
+ - 支持密码保护的密钥(无需在容器内输入密码)
475
+ - 需要宿主机 `gpg-agent` 正在运行
459
476
 
460
- > **注意**:GPG 签名需要一个没有密码的 GPG 密钥,或正确配置 GPG agent。为了安全起见,建议考虑使用 SSH 提交签名。
477
+ 3. **完全禁用 GPG 签名**
478
+ - 默认行为(如果不配置 `enableGpgSigning`)
479
+ - 即使宿主机配置了 `commit.gpgsign = true`,容器内也会禁用签名
480
+ - 这是为了避免在无法访问 `/dev/tty` 的容器环境中出现签名失败
481
+
482
+ > [!NOTE]
483
+ >
484
+ > 为了安全起见,建议使用 SSH 提交签名(如果 Git 服务器支持)。这样不需要配置 GPG 就能实现签名。
461
485
 
462
486
  #### 禁用 SSH/GPG 转发
463
487
 
@@ -467,7 +491,8 @@ claude-run # SSH agent 会被转发到容器
467
491
  {
468
492
  "forwardSshKeys": false,
469
493
  "forwardGpgKeys": false,
470
- "forwardSshAgent": false
494
+ "forwardSshAgent": false,
495
+ "forwardGpgAgent": false
471
496
  }
472
497
  ```
473
498
 
package/dist/cli.js CHANGED
@@ -17,7 +17,7 @@ const docker_config_1 = require("./docker-config");
17
17
  const index_1 = require("./index");
18
18
  const web_server_1 = require("./web-server");
19
19
  // Package info - injected at build time
20
- const currentVersion = '0.2.10';
20
+ const currentVersion = '0.2.11';
21
21
  const packageName = 'claude-code-runner';
22
22
  // Check for updates (non-blocking)
23
23
  async function checkForUpdates() {
@@ -9,7 +9,6 @@ export declare class ContainerManager {
9
9
  private ensureImage;
10
10
  private pullImage;
11
11
  private formatBytes;
12
- private buildDefaultImage;
13
12
  private buildImage;
14
13
  private createContainer;
15
14
  private prepareEnvironment;
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,SAAS,CAAC;AAU1D,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAA4C;gBAElD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa;IAK3C,KAAK,CAAC,eAAe,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;YA+DpC,WAAW;YAiDX,SAAS;IA6FvB,OAAO,CAAC,WAAW;YASL,iBAAiB;YAqIjB,UAAU;YAkCV,eAAe;IAoC7B,OAAO,CAAC,kBAAkB;IA4J1B,OAAO,CAAC,cAAc;YA2GR,qBAAqB;YAwIrB,iBAAiB;YAqMjB,cAAc;YAgFd,wBAAwB;YAqJxB,gBAAgB;IAuExB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAY9B"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,SAAS,CAAC;AAU1D,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,UAAU,CAA4C;gBAElD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa;IAK3C,KAAK,CAAC,eAAe,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;YA+DpC,WAAW;YAgDX,SAAS;IA6FvB,OAAO,CAAC,WAAW;YASL,UAAU;YAkCV,eAAe;IAoC7B,OAAO,CAAC,kBAAkB;IAsK1B,OAAO,CAAC,cAAc;YAyHR,qBAAqB;YAwIrB,iBAAiB;YAqMjB,cAAc;YAgFd,wBAAwB;YA0JxB,gBAAgB;IAuExB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAY9B"}
package/dist/container.js CHANGED
@@ -138,8 +138,7 @@ class ContainerManager {
138
138
  await this.pullImage(imageName);
139
139
  }
140
140
  catch (error) {
141
- console.log(chalk_1.default.yellow('⚠ Failed to pull image, using inline Dockerfile'));
142
- await this.buildDefaultImage(imageName);
141
+ throw new Error(`Failed to pull image '${imageName}' and no Dockerfile available. Please ensure docker/Dockerfile exists or use a pre-built image.`);
143
142
  }
144
143
  }
145
144
  }
@@ -222,130 +221,6 @@ class ContainerManager {
222
221
  const i = Math.floor(Math.log(bytes) / Math.log(k));
223
222
  return `${(bytes / k ** i).toFixed(1)} ${sizes[i]}`;
224
223
  }
225
- async buildDefaultImage(imageName) {
226
- const dockerfile = `
227
- FROM docker.io/library/almalinux:10
228
-
229
- # Install system dependencies
230
- RUN dnf install -y epel-release && dnf install -y \
231
- curl \\
232
- git \\
233
- openssh-clients \\
234
- python3 \\
235
- python3-pip \\
236
- gcc \\
237
- gcc-c++ \\
238
- make \\
239
- sudo \\
240
- vim \\
241
- jq \\
242
- ca-certificates \\
243
- gnupg2 \\
244
- inotify-tools \\
245
- rsync \\
246
- && dnf clean all
247
-
248
- # Install GitHub CLI
249
- RUN dnf install -y 'dnf-command(config-manager)' \\
250
- && dnf config-manager --add-repo https://cli.github.com/packages/rpm/gh-cli.repo \\
251
- && dnf install -y gh
252
-
253
- # Install Claude Code using native installer
254
- RUN curl -fsSL https://claude.ai/install.sh | bash
255
-
256
- # Ensure claude is in PATH for all users
257
- ENV PATH="/root/.local/bin:\${PATH}"
258
-
259
- # Create a non-root user with sudo privileges
260
- RUN useradd -m -s /bin/bash claude && \\
261
- echo 'claude ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers && \\
262
- usermod -aG wheel claude
263
-
264
- # Switch to claude user to install Claude Code
265
- USER claude
266
-
267
- # Install Claude Code for claude user
268
- RUN curl -fsSL https://claude.ai/install.sh | bash
269
-
270
- # Ensure claude is in PATH for claude user
271
- RUN echo 'export PATH="$HOME/.local/bin:$PATH"' >> /home/claude/.bashrc
272
-
273
- # Switch back to root for remaining setup
274
- USER root
275
-
276
- # Create workspace directory and set ownership
277
- RUN mkdir -p /workspace && \\
278
- chown -R claude:claude /workspace
279
-
280
- # Switch to non-root user
281
- USER claude
282
- WORKDIR /workspace
283
-
284
- # Set up entrypoint
285
- ENTRYPOINT ["/bin/bash", "-c"]
286
- `;
287
- /*
288
- RUN echo '#!/bin/bash\\n\\
289
- # Allow the initial branch creation\\n\\
290
- if [ ! -f /tmp/.branch-created ]; then\\n\\
291
- /usr/bin/git "$@"\\n\\
292
- if [[ "$1" == "checkout" ]] && [[ "$2" == "-b" ]]; then\\n\\
293
- touch /tmp/.branch-created\\n\\
294
- fi\\n\\
295
- else\\n\\
296
- # After initial branch creation, prevent switching\\n\\
297
- if [[ "$1" == "checkout" ]] && [[ "$2" != "-b" ]]; then\\n\\
298
- echo "Branch switching is disabled in claude-code-runner"\\n\\
299
- exit 1\\n\\
300
- fi\\n\\
301
- if [[ "$1" == "switch" ]]; then\\n\\
302
- echo "Branch switching is disabled in claude-code-runner"\\n\\
303
- exit 1\\n\\
304
- fi\\n\\
305
- /usr/bin/git "$@"\\n\\
306
- fi' > /usr/local/bin/git && \\
307
- chmod +x /usr/local/bin/git
308
- # Create startup script
309
- RUN echo '#!/bin/bash\\n\\
310
- echo "Waiting for attachment..."\\n\\
311
- sleep 2\\n\\
312
- cd /workspace\\n\\
313
- git checkout -b "$1"\\n\\
314
- echo "Starting Claude Code on branch $1..."\\n\\
315
- exec claude --dangerously-skip-permissions' > /start-claude.sh && \\
316
- chmod +x /start-claude.sh */
317
- // Build image from string
318
- const pack = tar_stream_1.default.pack();
319
- // Add Dockerfile to tar
320
- pack.entry({ name: 'Dockerfile' }, dockerfile, (err) => {
321
- if (err)
322
- throw err;
323
- pack.finalize();
324
- });
325
- // Convert to buffer for docker
326
- const chunks = [];
327
- pack.on('data', (chunk) => chunks.push(chunk));
328
- await new Promise((resolve) => {
329
- pack.on('end', resolve);
330
- });
331
- const tarBuffer = node_buffer_1.Buffer.concat(chunks);
332
- const buildStream = await this.docker.buildImage(tarBuffer, {
333
- t: imageName,
334
- });
335
- // Wait for build to complete
336
- await new Promise((resolve, reject) => {
337
- this.docker.modem.followProgress(buildStream, (err, res) => {
338
- if (err)
339
- reject(err);
340
- else
341
- resolve(res);
342
- }, (event) => {
343
- if (event.stream) {
344
- node_process_1.default.stdout.write(event.stream);
345
- }
346
- });
347
- });
348
- }
349
224
  async buildImage(dockerfilePath, imageName) {
350
225
  const buildContext = node_path_1.default.dirname(dockerfilePath);
351
226
  const buildStream = await this.docker.buildImage({
@@ -493,8 +368,18 @@ exec claude --dangerously-skip-permissions' > /start-claude.sh && \\
493
368
  if (sshAuthSock && fs.existsSync(sshAuthSock)) {
494
369
  env.push('SSH_AUTH_SOCK=/tmp/.ssh-agent-sock');
495
370
  }
496
- // GPG agent - disable TTY requirement for non-interactive use
497
- env.push('GPG_TTY=');
371
+ // GPG agent forwarding - if enabled and socket is available
372
+ const gpgAgentSocket = node_path_1.default.join(os.homedir(), '.gnupg', 'S.gpg-agent');
373
+ if (this.config.forwardGpgAgent === true && fs.existsSync(gpgAgentSocket)) {
374
+ // Point to the container's GPG agent socket relay
375
+ env.push('GPG_TTY=/dev/tty');
376
+ // Set GNUPGHOME to use the forwarded agent
377
+ env.push('GNUPGHOME=/home/claude/.gnupg');
378
+ }
379
+ else {
380
+ // Disable TTY requirement for non-interactive use (no agent available)
381
+ env.push('GPG_TTY=');
382
+ }
498
383
  // Pass GPG signing preference to container
499
384
  if (this.config.enableGpgSigning) {
500
385
  env.push('GIT_COMMIT_GPG_SIGN=true');
@@ -541,6 +426,19 @@ exec claude --dangerously-skip-permissions' > /start-claude.sh && \\
541
426
  volumes.push(`${sshAuthSock}:/tmp/.ssh-agent-sock:rw`);
542
427
  console.log(chalk_1.default.blue('✓ SSH agent forwarding enabled'));
543
428
  }
429
+ // Mount GPG agent socket if available and explicitly enabled (for GPG signing)
430
+ const forwardGpgAgent = this.config.forwardGpgAgent === true; // Default: false - must be explicit
431
+ if (forwardGpgAgent) {
432
+ // GPG agent socket is typically at ~/.gnupg/S.gpg-agent
433
+ const gpgAgentSocket = node_path_1.default.join(os.homedir(), '.gnupg', 'S.gpg-agent');
434
+ if (fs.existsSync(gpgAgentSocket)) {
435
+ volumes.push(`${gpgAgentSocket}:/tmp/.gpg-agent-sock:rw`);
436
+ console.log(chalk_1.default.blue('✓ GPG agent forwarding enabled'));
437
+ }
438
+ else {
439
+ console.log(chalk_1.default.yellow('⚠ GPG agent socket not found - GPG signing may not work'));
440
+ }
441
+ }
544
442
  // Add custom volumes (legacy format)
545
443
  if (this.config.volumes) {
546
444
  volumes.push(...this.config.volumes);
@@ -949,11 +847,16 @@ exec /bin/bash`;
949
847
  git config --global --add safe.directory /workspace &&
950
848
  # Clean up macOS resource fork files in git pack directory
951
849
  find .git/objects/pack -name "._pack-*.idx" -type f -delete 2>/dev/null || true &&
952
- # Configure git commit signing - disable GPG signing by default to avoid passphrase prompts
953
- # Users can enable it by setting GIT_COMMIT_GPG_SIGN=true in environment
954
- if [ -z "$GIT_COMMIT_GPG_SIGN" ] || [ "$GIT_COMMIT_GPG_SIGN" != "true" ]; then
850
+ # Configure git commit signing
851
+ # Disable GPG signing by default to avoid passphrase prompts in non-interactive environments
852
+ # Even if host .gitconfig has commit.gpgsign=true, override it unless explicitly enabled
853
+ ENABLE_GPG_SIGNING="${this.config.enableGpgSigning === true ? 'true' : 'false'}" &&
854
+ if [ "$ENABLE_GPG_SIGNING" = "true" ]; then
855
+ git config --global commit.gpgsign true
856
+ echo "✓ GPG signing enabled"
857
+ else
955
858
  git config --global commit.gpgsign false
956
- echo "✓ GPG signing disabled (set GIT_COMMIT_GPG_SIGN=true to enable)"
859
+ echo "✓ GPG signing disabled (enable with enableGpgSigning: true in config)"
957
860
  fi &&
958
861
  # Start SSH agent if not already running and we have keys
959
862
  if [ -d "/home/claude/.ssh" ] && [ -z "$SSH_AUTH_SOCK" ]; then
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,6CAAqC;AACrC,2DAA8C;AAC9C,4CAA8B;AAC9B,4CAA8B;AAC9B,0DAA6B;AAC7B,gEAAmC;AACnC,kDAA0B;AAC1B,4DAAmC;AAEnC,MAAa,gBAAgB;IACpB,MAAM,CAAS;IACf,MAAM,CAAgB;IACtB,UAAU,GAAkC,IAAI,GAAG,EAAE,CAAC;IAE9D,YAAY,MAAc,EAAE,MAAqB;QAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,eAAoB;QAC/B,sBAAsB;QACtB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzB,mBAAmB;QACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QAC9D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAE7C,kBAAkB;QAClB,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAEhD,2CAA2C;QAC3C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAEvD,oCAAoC;QACpC,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;YAC5D,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5E,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC7D,CAAC;QAED,wCAAwC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAE3C,yCAAyC;YACzC,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAExC,sCAAsC;YACtC,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC,CAAC;YACvD,gCAAgC;YAChC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACvC,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,KAAK,CAAC;QACb,CAAC;QAED,4CAA4C;QAC5C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE9C,uCAAuC;QACvC,MAAM,IAAI,CAAC,wBAAwB,CAClC,SAAS,EACT,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,cAAc,CAC9B,CAAC;QAEF,qBAAqB;QACrB,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAEvC,OAAO,SAAS,CAAC,EAAE,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,WAAW;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,2BAA2B,CAAC;QAEzE,gCAAgC;QAChC,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC,CAAC;YACjE,OAAO;QACR,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACd,uDAAuD;QACxD,CAAC;QAED,iDAAiD;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,kBAAkB;QACxE,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QAEvH,IAAI,WAAW,IAAI,kBAAkB,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,SAAS,KAAK,CAAC,CAAC,CAAC;YAE7D,mDAAmD;YACnD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC5B,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAC1D,CAAC;iBACI,CAAC;gBACL,gDAAgD;gBAChD,MAAM,qBAAqB,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACjF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,qBAAqB,EAAE,CAAC,CAAC,CAAC;gBAChF,MAAM,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;aACI,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,2BAA2B;YAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,SAAS,KAAK,CAAC,CAAC,CAAC;YAC1E,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;aACI,CAAC;YACL,sDAAsD;YACtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,SAAS,KAAK,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,CAAC,CAAC;gBAC7E,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACzC,CAAC;QACF,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,SAAiB;QACxC,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8C,CAAC;YAC5E,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;YAE9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAC/B,MAAM,EACN,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;gBACtB,IAAI,GAAG,EAAE,CAAC;oBACT,MAAM,CAAC,GAAG,CAAC,CAAC;gBACb,CAAC;qBACI,CAAC;oBACL,0CAA0C;oBAC1C,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;oBACxD,OAAO,EAAE,CAAC;gBACX,CAAC;YACF,CAAC,EACD,CAAC,KAAU,EAAE,EAAE;gBACd,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,IAAI,UAAU,CAAC;oBAEvC,qBAAqB;oBACrB,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;wBACd,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;wBAExC,0BAA0B;wBAC1B,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;4BACxD,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE;gCAC3B,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC;gCAC1C,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK;6BACjC,CAAC,CAAC;wBACJ,CAAC;oBACF,CAAC;oBAED,6BAA6B;oBAC7B,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,IAAI,eAAe,GAAG,CAAC,CAAC;oBACxB,IAAI,WAAW,GAAG,KAAK,CAAC;oBAExB,KAAK,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;wBACtD,UAAU,IAAI,QAAQ,CAAC,KAAK,CAAC;wBAC7B,eAAe,IAAI,QAAQ,CAAC,OAAO,CAAC;wBACpC,WAAW,GAAG,IAAI,CAAC;oBACpB,CAAC;oBAED,yBAAyB;oBACzB,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC/D,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAClD,CAAC,MAAM,CAAC;oBACT,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC5D,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAC9F,CAAC,MAAM,CAAC;oBACT,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC;oBAE/B,4CAA4C;oBAC5C,IAAI,OAAO,GAAG,iBAAiB,CAAC;oBAEhC,IAAI,WAAW,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;wBACnC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC;wBACpE,MAAM,QAAQ,GAAG,EAAE,CAAC;wBACpB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;wBAC9D,MAAM,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;wBAE1C,MAAM,WAAW,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;wBAC9F,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;wBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;wBAE/C,OAAO,IAAI,IAAI,WAAW,KAAK,UAAU,MAAM,UAAU,IAAI,SAAS,GAAG,CAAC;oBAC3E,CAAC;yBACI,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACpB,OAAO,IAAI,GAAG,QAAQ,IAAI,KAAK,SAAS,CAAC;oBAC1C,CAAC;yBACI,CAAC;wBACL,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;oBACxB,CAAC;oBAED,uBAAuB;oBACvB,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;wBACrB,OAAO,IAAI,eAAK,CAAC,GAAG,CAAC,MAAM,WAAW,cAAc,CAAC,CAAC;oBACvD,CAAC;oBAED,oCAAoC;oBACpC,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;gBAC/D,CAAC;YACF,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,WAAW,CAAC,KAAa;QAChC,IAAI,KAAK,KAAK,CAAC;YACd,OAAO,KAAK,CAAC;QACd,MAAM,CAAC,GAAG,IAAI,CAAC;QACf,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAChD,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DpB,CAAC;QACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA6B8B;QAC9B,0BAA0B;QAC1B,MAAM,IAAI,GAAG,oBAAS,CAAC,IAAI,EAAE,CAAC;QAE9B,wBAAwB;QACxB,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,GAAQ,EAAE,EAAE;YAC3D,IAAI,GAAG;gBACN,MAAM,GAAG,CAAC;YACX,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAEpD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,oBAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAgB,EAAE;YAClE,CAAC,EAAE,SAAS;SACZ,CAAC,CAAC;QAEH,6BAA6B;QAC7B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAC/B,WAAkB,EAClB,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;gBACtB,IAAI,GAAG;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;;oBACR,OAAO,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,EACD,CAAC,KAAU,EAAE,EAAE;gBACd,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACpC,CAAC;YACF,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,UAAU,CACvB,cAAsB,EACtB,SAAiB;QAEjB,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAC/C;YACC,OAAO,EAAE,YAAY;YACrB,GAAG,EAAE,CAAC,mBAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;SACpC,EACD;YACC,UAAU,EAAE,mBAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YACzC,CAAC,EAAE,SAAS;SACZ,CACD,CAAC;QAEF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAC/B,WAAkB,EAClB,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;gBACtB,IAAI,GAAG;oBACN,MAAM,CAAC,GAAG,CAAC,CAAC;;oBACR,OAAO,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC,EACD,CAAC,KAAU,EAAE,EAAE;gBACd,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACpC,CAAC;YACF,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe,CAC5B,eAAoB;QAEpB,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC;QAEjD,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAEjD,kBAAkB;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE1D,mBAAmB;QACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;YACnD,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,2BAA2B;YAC7D,IAAI,EAAE,GACL,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,oBAChC,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;YAChB,GAAG,EAAE,GAAG;YACR,UAAU,EAAE;gBACX,KAAK,EAAE,OAAO;gBACd,UAAU,EAAE,KAAK;gBACjB,WAAW,EAAE,QAAQ;aACrB;YACD,UAAU,EAAE,YAAY;YACxB,GAAG,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;YACxB,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI;YAClB,GAAG,EAAE,IAAI;YACT,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,KAAK;SAChB,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IAClB,CAAC;IAEO,kBAAkB,CAAC,WAAwB;QAClD,MAAM,GAAG,GAAG,EAAE,CAAC;QAEf,yDAAyD;QACzD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC;gBACJ,MAAM,WAAW,GAAG,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,CAAC,CAClE,CAAC;oBAEF,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACzD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAErC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;wBAEhC,gCAAgC;wBAChC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;4BACjD,SAAS;wBACV,CAAC;wBAED,4BAA4B;wBAC5B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;4BAChC,SAAS;wBACV,CAAC;wBAED,gDAAgD;wBAChD,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wBACjD,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;wBAC7D,IAAI,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wBAE9D,uCAAuC;wBACvC,IACC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;+BAC3C,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAClD,CAAC;4BACF,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC5B,CAAC;wBAED,IAAI,GAAG,EAAE,CAAC;4BACT,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;wBAC7B,CAAC;oBACF,CAAC;oBAED,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,KAAK,CACV,YAAY,GAAG,CAAC,MAAM,+BAA+B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAC1E,CACD,CAAC;gBACH,CAAC;qBACI,CAAC;oBACL,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,MAAM,CACX,sBAAsB,IAAI,CAAC,MAAM,CAAC,OAAO,YAAY,CACrD,CACD,CAAC;gBACH,CAAC;YACF,CAAC;YACD,OAAO,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,MAAM,CACX,qCAAqC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAC3D,EACD,KAAK,CACL,CAAC;YACH,CAAC;QACF,CAAC;QAED,oCAAoC;QACpC,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;YACxB,QAAQ,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,KAAK,SAAS;oBACb,GAAG,CAAC,IAAI,CAAC,qBAAqB,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC1D,MAAM;gBACP,KAAK,SAAS;oBACb,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;oBACtC,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC/B,GAAG,CAAC,IAAI,CAAC,cAAc,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACrD,CAAC;oBACD,MAAM;gBACP,KAAK,QAAQ;oBACZ,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBACrC,IAAI,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBAChC,GAAG,CAAC,IAAI,CAAC,wBAAwB,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;oBAChE,CAAC;oBACD,MAAM;YACR,CAAC;QACF,CAAC;aACI,IAAI,sBAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YACxC,oGAAoG;YACpG,GAAG,CAAC,IAAI,CAAC,qBAAqB,sBAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,wCAAwC;QACxC,IAAI,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,gBAAgB,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC;aACI,IAAI,sBAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACnC,gCAAgC;YAChC,GAAG,CAAC,IAAI,CAAC,gBAAgB,sBAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;QACtD,CAAC;aACI,IAAI,sBAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC/B,2BAA2B;YAC3B,GAAG,CAAC,IAAI,CAAC,gBAAgB,sBAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjD,GAAG,CAAC,IAAI,CAAC,YAAY,sBAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,4CAA4C;QAC5C,IAAI,sBAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CAAC,mBAAmB,sBAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,sBAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,oBAAoB,sBAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,sBAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;YACpC,GAAG,CAAC,IAAI,CAAC,sBAAsB,sBAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,sBAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;YACrC,GAAG,CAAC,IAAI,CAAC,uBAAuB,sBAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,wEAAwE;QACxE,MAAM,WAAW,GAAG,sBAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC9C,IAAI,WAAW,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAChD,CAAC;QAED,8DAA8D;QAC9D,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAErB,2CAA2C;QAC3C,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACtC,CAAC;QAED,oBAAoB;QACpB,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACnC,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAChE,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,GAAG,CAAC;IACZ,CAAC;IAEO,cAAc,CACrB,QAAgB,EAChB,YAAyB;QAEzB,mDAAmD;QACnD,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,6EAA6E;QAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,gBAAgB;QAC7E,MAAM,MAAM,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,cAAc,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,uFAAuF;YACvF,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,oBAAoB,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,6EAA6E;QAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,gBAAgB;QAC7E,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,cAAc,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,yFAAyF;YACzF,OAAO,CAAC,IAAI,CAAC,GAAG,QAAQ,sBAAsB,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,uFAAuF;QACvF,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,KAAK,KAAK,CAAC,CAAC,gBAAgB;QAC/E,MAAM,WAAW,GAAG,sBAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QAC9C,IAAI,eAAe,IAAI,WAAW,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,0BAA0B,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,qCAAqC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACJ,8CAA8C;oBAC9C,IAAI,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnE,cAAc,GAAG,cAAc,CAAC,OAAO,CACtC,UAAU,EACV,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAClB,OAAO,sBAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;oBACtC,CAAC,CACD,CAAC;oBAEF,0BAA0B;oBAC1B,MAAM,UAAU,GAAG,mBAAI,CAAC,UAAU,CAAC,cAAc,CAAC;wBACjD,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,mBAAI,CAAC,OAAO,CAAC,sBAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC;oBAE/C,yBAAyB;oBACzB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;wBAChC,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,MAAM,CACX,kCAAkC,KAAK,CAAC,MAAM,iBAAiB,UAAU,GAAG,CAC5E,CACD,CAAC;wBACF,SAAS;oBACV,CAAC;oBAED,8CAA8C;oBAC9C,IAAI,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;oBACrE,cAAc,GAAG,cAAc,CAAC,OAAO,CACtC,UAAU,EACV,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAClB,8DAA8D;wBAC9D,IAAI,OAAO,KAAK,MAAM;4BACrB,OAAO,cAAc,CAAC;wBACvB,OAAO,KAAK,CAAC,CAAC,6BAA6B;oBAC5C,CAAC,CACD,CAAC;oBAEF,iCAAiC;oBACjC,MAAM,UAAU,GAAG,mBAAI,CAAC,UAAU,CAAC,cAAc,CAAC;wBACjD,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,mBAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;oBAE3C,sBAAsB;oBACtB,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ;wBACjC,CAAC,CAAC,GAAG,UAAU,IAAI,UAAU,KAAK;wBAClC,CAAC,CAAC,GAAG,UAAU,IAAI,UAAU,EAAE,CAAC;oBAEjC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC1B,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,IAAI,CACT,cAAc,KAAK,CAAC,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CACnF,CACD,CAAC;gBACH,CAAC;gBACD,OAAO,KAAK,EAAE,CAAC;oBACd,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,MAAM,CAAC,6BAA6B,KAAK,CAAC,MAAM,GAAG,CAAC,EAC1D,KAAK,CACL,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED,OAAO,OAAO,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAClC,SAA2B,EAC3B,OAAe;QAEf,0CAA0C;QAC1C,MAAM,WAAW,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC;gBACJ,wDAAwD;gBACxD,IAAA,6BAAQ,EAAC,qCAAqC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBACnE,OAAO,aAAa,CAAC;YACtB,CAAC;YACD,MAAM,CAAC;gBACN,8CAA8C;gBAC9C,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC,CAAC;QAEF,IAAI,CAAC;YACJ,gEAAgE;YAChE,MAAM,YAAY,GAAG,IAAA,6BAAQ,EAAC,cAAc,EAAE;gBAC7C,GAAG,EAAE,OAAO;gBACZ,QAAQ,EAAE,OAAO;aACjB,CAAC;iBACA,IAAI,EAAE;iBACN,KAAK,CAAC,IAAI,CAAC;iBACX,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAE3B,qFAAqF;YACrF,IAAI,cAAc,GAAa,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAClC,cAAc,GAAG,IAAA,6BAAQ,EAAC,0CAA0C,EAAE;oBACrE,GAAG,EAAE,OAAO;oBACZ,QAAQ,EAAE,OAAO;iBACjB,CAAC;qBACA,IAAI,EAAE;qBACN,KAAK,CAAC,IAAI,CAAC;qBACX,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;YAED,oBAAoB;YACpB,MAAM,QAAQ,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC,CAAC;YAEtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC;YAEjE,2EAA2E;YAC3E,MAAM,OAAO,GAAG,sBAAsB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;YAEvD,0DAA0D;YAC1D,IAAA,6BAAQ,EAAC,gCAAgC,OAAO,QAAQ,EAAE;gBACzD,GAAG,EAAE,OAAO;gBACZ,KAAK,EAAE,MAAM;aACb,CAAC,CAAC;YAEH,6BAA6B;YAC7B,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,6BAA6B;gBAC7B,MAAM,YAAY,GAAG,4BAA4B,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;gBAClE,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAE1D,oCAAoC;gBACpC,IAAA,6BAAQ,EAAC,YAAY,OAAO,mBAAmB,YAAY,GAAG,EAAE;oBAC/D,GAAG,EAAE,OAAO;oBACZ,KAAK,EAAE,MAAM;iBACb,CAAC,CAAC;gBAEH,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YAC7B,CAAC;YAED,8DAA8D;YAC9D,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAE5C,6BAA6B;YAC7B,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;gBAClD,IAAI,EAAE,YAAY;aAClB,CAAC,CAAC;YAEH,8CAA8C;YAC9C,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjB,aAAa;gBACb,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACrC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;wBACrB,OAAO,EAAE,CAAC;oBACX,CAAC,CAAC,CAAC;oBACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC5B,CAAC,CAAC;aACF,CAAC,CAAC;YAEH,WAAW;YACX,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEvB,mDAAmD;YACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACpD,MAAM,UAAU,GAAG,0BAA0B,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;YAC9D,4EAA4E;YAC5E,yEAAyE;YACzE,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;YAC/B,sEAAsE;YACtE,MAAM,eAAe,GAAI,sBAAO,CAAC,QAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,MAAM,aAAa,GAAG,GAAG,QAAQ,IAAI,eAAe,EAAE,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAA,6BAAQ,EACP,YAAY,UAAU,2CAA2C,aAAa,OAAO,EACrF;gBACC,GAAG,EAAE,OAAO;gBACZ,KAAK,EAAE,MAAM;aACb,CACD,CAAC;YAEF,IAAI,CAAC;gBACJ,MAAM,SAAS,GAAG,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAElD,qBAAqB;gBACrB,MAAM,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE;oBACrC,IAAI,EAAE,YAAY;iBAClB,CAAC,CAAC;gBAEH,WAAW;gBACX,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC9D,8CAA8C;gBAC9C,IAAI,CAAC;oBACJ,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,CAAC,EAAE,CAAC;oBACV,wBAAwB;gBACzB,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,KAAK,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,SAA2B;QAC1D,0CAA0C;QAC1C,MAAM,WAAW,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC;gBACJ,wDAAwD;gBACxD,IAAA,6BAAQ,EAAC,qCAAqC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBACnE,OAAO,aAAa,CAAC;YACtB,CAAC;YACD,MAAM,CAAC;gBACN,8CAA8C;gBAC9C,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC,CAAC;QAEF,IAAI,CAAC;YACJ,8DAA8D;YAC9D,IAAI,sBAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACJ,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CACjE,CAAC;oBACF,MAAM,aAAa,GAAG,IAAA,6BAAQ,EAC7B,gEAAgE,EAChE;wBACC,QAAQ,EAAE,OAAO;wBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;qBACnD,CACD,CAAC,IAAI,EAAE,CAAC;oBAET,IAAI,aAAa,EAAE,CAAC;wBACnB,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAC3D,CAAC;wBAEF,qCAAqC;wBACrC,MAAM,YAAY,GAAG,wBAAwB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;wBAC9D,MAAM,IAAI,GAAG,oBAAS,CAAC,IAAI,EAAE,CAAC;wBAE9B,mCAAmC;wBACnC,IAAI,CAAC,KAAK,CACT,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,KAAK,EAAE,EAClD,aAAa,EACb,CAAC,GAAQ,EAAE,EAAE;4BACZ,IAAI,GAAG;gCACN,MAAM,GAAG,CAAC;4BACX,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACjB,CAAC,CACD,CAAC;wBAEF,MAAM,MAAM,GAAa,EAAE,CAAC;wBAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;wBAEpD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;4BAC3C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gCACnB,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,oBAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gCACtD,OAAO,EAAE,CAAC;4BACX,CAAC,CAAC,CAAC;4BACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;wBAC1B,CAAC,CAAC,CAAC;wBAEH,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBACjD,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;4BAClC,IAAI,EAAE,cAAc;yBACpB,CAAC,CAAC;wBAEH,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBAE5B,kBAAkB;wBAClB,MAAM,SAAS;6BACb,IAAI,CAAC;4BACL,GAAG,EAAE;gCACJ,WAAW;gCACX,IAAI;gCACJ,wLAAwL;6BACxL;4BACD,YAAY,EAAE,KAAK;4BACnB,YAAY,EAAE,KAAK;yBACnB,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;wBAE/B,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAChE,CAAC;oBACH,CAAC;gBACF,CAAC;gBACD,OAAO,KAAK,EAAE,CAAC;oBACd,iEAAiE;oBACjE,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,CAC/D,CAAC;gBACH,CAAC;YACF,CAAC;YAED,iCAAiC;YACjC,MAAM,cAAc,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;YAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBAErD,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBAC/D,MAAM,OAAO,GAAG,oBAAoB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;gBACrD,MAAM,IAAI,GAAG,oBAAS,CAAC,IAAI,EAAE,CAAC;gBAE9B,IAAI,CAAC,KAAK,CACT,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,EACrC,aAAa,EACb,CAAC,GAAQ,EAAE,EAAE;oBACZ,IAAI,GAAG;wBACN,MAAM,GAAG,CAAC;oBACX,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjB,CAAC,CACD,CAAC;gBAEF,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAEpD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC3C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;wBACnB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,oBAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;wBACjD,OAAO,EAAE,CAAC;oBACX,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC5C,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;oBAClC,IAAI,EAAE,cAAc;iBACpB,CAAC,CAAC;gBAEH,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBAEvB,kBAAkB;gBAClB,MAAM,SAAS;qBACb,IAAI,CAAC;oBACL,GAAG,EAAE;wBACJ,WAAW;wBACX,IAAI;wBACJ,2FAA2F;qBAC3F;oBACD,YAAY,EAAE,KAAK;oBACnB,YAAY,EAAE,KAAK;iBACnB,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAChC,CAAC;YAED,oFAAoF;YACpF,MAAM,SAAS,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;YACrD,IACC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;mBACrB,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;mBACpC,sBAAO,CAAC,QAAQ,KAAK,QAAQ,EAC/B,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;gBAE1D,MAAM,OAAO,GAAG,mBAAmB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;gBACpD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC/B,sEAAsE;gBACtE,MAAM,eAAe,GAAI,sBAAO,CAAC,QAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnG,MAAM,aAAa,GAAG,GAAG,QAAQ,IAAI,eAAe,EAAE,CAAC,IAAI,EAAE,CAAC;gBAC9D,IAAA,6BAAQ,EACP,YAAY,OAAO,KAAK,aAAa,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,EACpE;oBACC,KAAK,EAAE,MAAM;iBACb,CACD,CAAC;gBAEF,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC5C,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;oBAClC,IAAI,EAAE,cAAc;iBACpB,CAAC,CAAC;gBAEH,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBAEvB,8BAA8B;gBAC9B,MAAM,SAAS;qBACb,IAAI,CAAC;oBACL,GAAG,EAAE;wBACJ,WAAW;wBACX,IAAI;wBACJ,uFAAuF;qBACvF;oBACD,YAAY,EAAE,KAAK;oBACnB,YAAY,EAAE,KAAK;iBACnB,CAAC;qBACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAChC,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,MAAM,CAAC,wCAAwC,CAAC,EACtD,KAAK,CACL,CAAC;YACF,6DAA6D;QAC9D,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,SAA2B;QACvD,MAAM,aAAa,GAAG,mBAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;QAE5D,IAAI,CAAC;YACJ,sCAAsC;YACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,wBAAwB;YACjC,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;YAE1D,2BAA2B;YAC3B,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YAE9D,kDAAkD;YAClD,MAAM,OAAO,GAAG,mBAAmB,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;YACpD,MAAM,IAAI,GAAG,oBAAS,CAAC,IAAI,EAAE,CAAC;YAE9B,qCAAqC;YACrC,IAAI,CAAC,KAAK,CACT,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,EACnC,aAAa,EACb,CAAC,GAAQ,EAAE,EAAE;gBACZ,IAAI,GAAG;oBACN,MAAM,GAAG,CAAC;gBACX,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,CAAC,CACD,CAAC;YAEF,0BAA0B;YAC1B,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAEpD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3C,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACnB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,oBAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;oBACjD,OAAO,EAAE,CAAC;gBACX,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;YAEH,kEAAkE;YAClE,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE;gBAClC,IAAI,EAAE,cAAc,EAAE,uCAAuC;aAC7D,CAAC,CAAC;YAEH,WAAW;YACX,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEvB,qCAAqC;YACrC,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;gBACzC,GAAG,EAAE;oBACJ,WAAW;oBACX,IAAI;oBACJ,kDAAkD;iBAClD;gBACD,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,6CAA6C;YAC7C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,eAAe;gBAChD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC9B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,EACnD,KAAK,CACL,CAAC;YACF,6DAA6D;QAC9D,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACrC,SAAc,EACd,UAAkB,EAClB,UAAmB,EACnB,cAAuB;QAEvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAEzE,uCAAuC;QACvC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,QAAQ,CAAC;QAE1D,0CAA0C;QAC1C,MAAM,aAAa,GAChB,YAAY,KAAK,QAAQ;YAC1B,CAAC,CAAC;;;;;;;;;;;;;;;;;eAiBS;YACX,CAAC,CAAC;;;;;;;;eAQS,CAAC;QAEd,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;YACtC,GAAG,EAAE;gBACJ,WAAW;gBACX,IAAI;gBACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA8Be,UAAU,IAAI,EAAE;;6BAEN,UAAU;yDACkB,UAAU;4BACvC,UAAU;sDACgB,UAAU;;4BAEpC,UAAU;6CACO,UAAU;;qBAElC,cAAc,IAAI,EAAE;;;yDAGgB,UAAU;4BACvC,UAAU;+BACP,UAAU;0DACiB,UAAU;;+BAErC,UAAU,MAAM,cAAc;wDACL,UAAU;;;;yDAIT,UAAU;4BACvC,UAAU;mDACa,UAAU;;+BAE9B,UAAU;0CACC,UAAU;;;;EAIlD,aAAa;;;;OAIR;aACH;YACD,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAE9C,6BAA6B;QAC7B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE;gBACrC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC3B,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAC1B,IACC,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC;uBACpC,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC;uBAChD,MAAM,CAAC,QAAQ,CAAC,sCAAsC,CAAC;uBACvD,MAAM,CAAC,QAAQ,CAAC,kCAAkC,CAAC;uBACnD,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC;uBAC1C,MAAM,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;uBACvD,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAC7C,CAAC;oBACF,OAAO,EAAE,CAAC;gBACX,CAAC;qBACI,CAAC;oBACL,MAAM,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnC,CAAC;YACF,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;IACtE,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,SAAc;QAC5C,4CAA4C;QAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC;YAC9D,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,IAAI,CACT,4BAA4B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,CAC9D,CACD,CAAC;YAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CACV,eAAK,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,oBAAoB,CACnE,CACD,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;gBAEzC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;oBACpC,GAAG,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC;oBACjC,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,IAAI;oBAClB,UAAU,EAAE,YAAY;oBACxB,IAAI,EAAE,QAAQ;iBACd,CAAC,CAAC;gBAEH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAE1C,+BAA+B;gBAC/B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC3C,IAAI,QAAQ,GAAG,KAAK,CAAC;oBAErB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE;wBACnC,sBAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACjD,CAAC,CAAC,CAAC;oBAEH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;wBAC9B,kBAAkB;wBAClB,IAAI,CAAC;4BACJ,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;4BACrC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gCACzB,OAAO,CAAC,KAAK,CACZ,eAAK,CAAC,GAAG,CAAC,mCAAmC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAC7D,CAAC;gCACF,QAAQ,GAAG,IAAI,CAAC;4BACjB,CAAC;iCACI,CAAC;gCACL,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;4BAC9D,CAAC;wBACF,CAAC;wBACD,OAAO,CAAC,EAAE,CAAC;4BACV,2BAA2B;wBAC5B,CAAC;wBAED,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC/D,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,OAAO,EAAE,CAAC,CAAC,CAAC;wBACvD,CAAC;6BACI,CAAC;4BACL,OAAO,EAAE,CAAC;wBACX,CAAC;oBACF,CAAC,CAAC,CAAC;oBAEH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC5D,CAAC;IACF,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,KAAK,MAAM,CAAC,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACJ,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YACD,OAAO,KAAK,EAAE,CAAC;gBACd,qCAAqC;YACtC,CAAC;QACF,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACD;AAvzCD,4CAuzCC"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -29,6 +29,7 @@ export interface SandboxConfig {
29
29
  forwardSshKeys?: boolean;
30
30
  forwardGpgKeys?: boolean;
31
31
  forwardSshAgent?: boolean;
32
+ forwardGpgAgent?: boolean;
32
33
  enableGpgSigning?: boolean;
33
34
  }
34
35
  export interface Credentials {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC3B,MAAM,CAAC,EAAE;QACR,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;QACjD,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACF;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC3B,MAAM,CAAC,EAAE;QACR,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;QACjD,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACF;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;CAChB"}
@@ -17,6 +17,7 @@ export declare class WebUIServer {
17
17
  private setupSocketHandlers;
18
18
  private performSync;
19
19
  private startContinuousMonitoring;
20
+ private startPollingMonitoring;
20
21
  private stopContinuousMonitoring;
21
22
  private calculateDiffStats;
22
23
  start(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"web-server.d.ts","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAwBpC,qBAAa,WAAW;IACvB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,WAAW,CAA4C;IAC/D,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAgBrD,OAAO,CAAC,WAAW;IAsKnB,OAAO,CAAC,mBAAmB;YAmUb,WAAW;YA2KX,yBAAyB;IAmIvC,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,kBAAkB;IAgCpB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAyB9B,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BrB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiC/C"}
1
+ {"version":3,"file":"web-server.d.ts","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAwBpC,qBAAa,WAAW;IACvB,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,WAAW,CAA4C;IAC/D,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAgBrD,OAAO,CAAC,WAAW;IAsKnB,OAAO,CAAC,mBAAmB;YAmUb,WAAW;YA2KX,yBAAyB;IAuJvC,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,kBAAkB;IAgCpB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAyB9B,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAKjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BrB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiC/C"}
@@ -657,12 +657,14 @@ class WebUIServer {
657
657
  }
658
658
  }
659
659
  if (!installed) {
660
- console.log(chalk_1.default.red(' Could not install inotify-tools, falling back to basic monitoring'));
660
+ console.log(chalk_1.default.red(' Could not install inotify-tools, falling back to polling monitoring'));
661
+ this.startPollingMonitoring(containerId);
661
662
  return;
662
663
  }
663
664
  }
664
665
  catch (error) {
665
666
  console.log(chalk_1.default.red(' Could not install inotify-tools:', error));
667
+ this.startPollingMonitoring(containerId);
666
668
  return;
667
669
  }
668
670
  }
@@ -678,6 +680,14 @@ class WebUIServer {
678
680
  Tty: false,
679
681
  });
680
682
  const stream = await inotifyExec.start({ hijack: true, stdin: false });
683
+ let fallbackStarted = false;
684
+ const startFallback = () => {
685
+ if (fallbackStarted)
686
+ return;
687
+ fallbackStarted = true;
688
+ this.stopContinuousMonitoring(containerId);
689
+ this.startPollingMonitoring(containerId);
690
+ };
681
691
  // Debounce sync to avoid too many rapid syncs
682
692
  let syncTimeout = null;
683
693
  const debouncedSync = () => {
@@ -704,7 +714,13 @@ class WebUIServer {
704
714
  else {
705
715
  data = chunk;
706
716
  }
707
- const events = data.toString().trim().split('\n');
717
+ const output = data.toString();
718
+ if (output.includes('Couldn\'t initialize inotify') || output.includes('Too many open files')) {
719
+ console.log(chalk_1.default.yellow('[INOTIFY] Initialization failed, falling back to polling'));
720
+ startFallback();
721
+ return;
722
+ }
723
+ const events = output.trim().split('\n');
708
724
  for (const event of events) {
709
725
  if (event.trim()) {
710
726
  console.log(chalk_1.default.gray(`[INOTIFY] ${event}`));
@@ -714,13 +730,28 @@ class WebUIServer {
714
730
  });
715
731
  stream.on('error', (err) => {
716
732
  console.error(chalk_1.default.red('[INOTIFY] Stream error:'), err);
733
+ startFallback();
717
734
  });
718
735
  stream.on('end', () => {
719
736
  console.log(chalk_1.default.yellow('[INOTIFY] Monitoring stopped'));
737
+ startFallback();
720
738
  });
721
739
  // Store the stream for cleanup
722
740
  this.fileWatchers.set(containerId, { stream, exec: inotifyExec });
723
741
  }
742
+ startPollingMonitoring(containerId) {
743
+ console.log(chalk_1.default.yellow(`[MONITOR] Falling back to polling for container ${containerId.substring(0, 12)}`));
744
+ const interval = setInterval(async () => {
745
+ console.log(chalk_1.default.gray('[POLL] Syncing files from container...'));
746
+ try {
747
+ await this.performSync(containerId);
748
+ }
749
+ catch (error) {
750
+ console.error(chalk_1.default.red('[POLL] Sync failed:'), error);
751
+ }
752
+ }, 2000);
753
+ this.fileWatchers.set(containerId, interval);
754
+ }
724
755
  stopContinuousMonitoring(containerId) {
725
756
  const monitor = this.fileWatchers.get(containerId);
726
757
  if (monitor) {
@@ -1 +1 @@
1
- {"version":3,"file":"web-server.js","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-server.js","sourceRoot":"","sources":["../src/web-server.ts"],"names":[],"mappings":"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"}
package/docker/Dockerfile CHANGED
@@ -168,6 +168,32 @@ RUN printf '%s\n' '#!/bin/bash' \
168
168
  ' fi' \
169
169
  'fi' \
170
170
  '' \
171
+ '# Set up GPG agent forwarding if socket is mounted' \
172
+ 'if [ -S "/tmp/.gpg-agent-sock" ]; then' \
173
+ ' # Create a socket proxy that claude user can access' \
174
+ ' # Using socat to relay GPG agent connections' \
175
+ ' CLAUDE_GPG_SOCK="/tmp/.gpg-agent-sock-claude"' \
176
+ ' rm -f "$CLAUDE_GPG_SOCK"' \
177
+ ' ' \
178
+ ' # Start socat in background to relay socket connections' \
179
+ ' socat UNIX-LISTEN:"$CLAUDE_GPG_SOCK",fork,user=claude,group=claude,mode=0600 UNIX-CONNECT:/tmp/.gpg-agent-sock &' \
180
+ ' ' \
181
+ ' # Update .gnupg directory if it exists' \
182
+ ' mkdir -p /home/claude/.gnupg' \
183
+ ' chown claude:claude /home/claude/.gnupg' \
184
+ ' chmod 700 /home/claude/.gnupg' \
185
+ ' ' \
186
+ ' # Create symlink from GPG agent socket to the relay socket' \
187
+ ' ln -sf "$CLAUDE_GPG_SOCK" /home/claude/.gnupg/S.gpg-agent 2>/dev/null || true' \
188
+ ' ' \
189
+ ' # Test if the relay works (gpg-connect-agent may not be available, so just test socket access)' \
190
+ ' if [ -S "$CLAUDE_GPG_SOCK" ]; then' \
191
+ ' echo "✓ GPG agent forwarding enabled via socat relay"' \
192
+ ' else' \
193
+ ' echo "⚠ GPG agent socket mounted but relay failed"' \
194
+ ' fi' \
195
+ 'fi' \
196
+ '' \
171
197
  '# Copy git config if mounted' \
172
198
  'if [ -f "/tmp/.gitconfig" ]; then' \
173
199
  ' cp /tmp/.gitconfig /home/claude/.gitconfig' \
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-runner",
3
- "version": "0.2.10",
3
+ "version": "0.2.11",
4
4
  "description": "Run Claude Code as an autonomous agent in Docker & Podman containers",
5
5
  "author": "XiaoXi <admin@soraharu.com>",
6
6
  "license": "MIT",
package/public/app.js CHANGED
@@ -927,12 +927,16 @@ function updateChangesTab(syncData) {
927
927
  };
928
928
  const statsText
929
929
  = diffStats.files > 0
930
- ? `${diffStats.files} file(s), +${diffStats.additions} -${diffStats.deletions}`
931
- : 'No changes';
930
+ ? I18n.t('changes.diffStats', {
931
+ files: diffStats.files,
932
+ additions: diffStats.additions,
933
+ deletions: diffStats.deletions,
934
+ })
935
+ : I18n.t('changes.noChangesTitle');
932
936
 
933
937
  container.innerHTML = `
934
938
  <div class="changes-summary">
935
- <strong>Changes Summary:</strong> ${syncData.summary}
939
+ <strong>${I18n.t('changes.changesSummary')}</strong> ${syncData.summary}
936
940
  <div class="diff-stats">📊 ${statsText}</div>
937
941
  </div>
938
942
 
@@ -941,7 +945,7 @@ function updateChangesTab(syncData) {
941
945
  </div>
942
946
 
943
947
  <div class="git-actions">
944
- <h3>💾 Commit Changes</h3>
948
+ <h3>${I18n.t('changes.commitChanges')}</h3>
945
949
  <textarea
946
950
  id="commit-message"
947
951
  placeholder="Enter commit message..."
@@ -952,20 +956,20 @@ ${syncData.summary}</textarea>
952
956
 
953
957
  <div style="margin-bottom: 15px;">
954
958
  <button onclick="commitChanges('${syncData.containerId}')" class="btn btn-primary" id="commit-btn">
955
- Commit Changes
959
+ ${I18n.t('changes.commitButton')}
956
960
  </button>
957
961
  </div>
958
962
  </div>
959
963
 
960
964
  <div class="git-actions" id="push-section" style="display: none;">
961
- <h3>🚀 Push to Remote</h3>
965
+ <h3>${I18n.t('changes.pushToRemote')}</h3>
962
966
  <div class="branch-input">
963
- <label for="branch-name">Branch name:</label>
964
- <input type="text" id="branch-name" placeholder="claude-changes" value="claude-changes">
967
+ <label for="push-branch-name">${I18n.t('changes.branchName')}</label>
968
+ <input type="text" id="push-branch-name" placeholder="claude-changes" value="claude-changes">
965
969
  </div>
966
970
  <div>
967
971
  <button onclick="pushChanges('${syncData.containerId}')" class="btn btn-success" id="push-btn">
968
- Push to Remote
972
+ ${I18n.t('changes.pushButton')}
969
973
  </button>
970
974
  </div>
971
975
  </div>
@@ -977,12 +981,8 @@ ${syncData.summary}</textarea>
977
981
 
978
982
  function clearChangesTab() {
979
983
  const container = document.getElementById('changes-container');
980
- const noChanges = document.getElementById('no-changes');
981
984
 
982
- // Show empty state
983
- noChanges.style.display = 'block';
984
-
985
- // Clear changes content but keep the empty state
985
+ // Clear changes content and show the empty state
986
986
  container.innerHTML = `
987
987
  <div class="empty-state" id="no-changes">
988
988
  <h3 data-i18n="changes.noChangesTitle">${t('changes.noChangesTitle', 'No changes detected')}</h3>
@@ -1006,21 +1006,21 @@ function formatDiffForDisplay(diffData) {
1006
1006
 
1007
1007
  // Show file status
1008
1008
  if (diffData.status) {
1009
- lines.push('<div class="diff-line header">📄 File Status:</div>');
1009
+ lines.push(`<div class="diff-line header">${I18n.t('changes.fileStatus')}</div>`);
1010
1010
  diffData.status.split('\n').forEach((line) => {
1011
1011
  if (line.trim()) {
1012
1012
  const status = line.substring(0, 2);
1013
1013
  const filename = line.substring(3);
1014
1014
  let statusText = '';
1015
1015
  if (status === '??')
1016
- statusText = 'New file';
1016
+ statusText = I18n.t('changes.fileStatusNew');
1017
1017
  else if (status === ' M' || status === 'M ' || status === 'MM')
1018
- statusText = 'Modified';
1018
+ statusText = I18n.t('changes.fileStatusModified');
1019
1019
  else if (status === ' D' || status === 'D ')
1020
- statusText = 'Deleted';
1020
+ statusText = I18n.t('changes.fileStatusDeleted');
1021
1021
  else if (status === 'A ' || status === 'AM')
1022
- statusText = 'Added';
1023
- else statusText = `Status: ${status}`;
1022
+ statusText = I18n.t('changes.fileStatusAdded');
1023
+ else statusText = I18n.t('changes.fileStatusUnknown', { status });
1024
1024
 
1025
1025
  lines.push(
1026
1026
  `<div class="diff-line context"> ${statusText}: ${filename}</div>`,
@@ -1032,7 +1032,7 @@ function formatDiffForDisplay(diffData) {
1032
1032
 
1033
1033
  // Show diff
1034
1034
  if (diffData.diff) {
1035
- lines.push('<div class="diff-line header">📝 Changes:</div>');
1035
+ lines.push(`<div class="diff-line header">${I18n.t('changes.changes')}</div>`);
1036
1036
  diffData.diff.split('\n').forEach((line) => {
1037
1037
  let className = 'context';
1038
1038
  if (line.startsWith('+'))
@@ -1051,7 +1051,7 @@ function formatDiffForDisplay(diffData) {
1051
1051
  // Show untracked files
1052
1052
  if (diffData.untrackedFiles && diffData.untrackedFiles.length > 0) {
1053
1053
  lines.push('<div class="diff-line context"></div>');
1054
- lines.push('<div class="diff-line header">📁 New Files:</div>');
1054
+ lines.push(`<div class="diff-line header">${I18n.t('changes.newFiles')}</div>`);
1055
1055
  diffData.untrackedFiles.forEach((filename) => {
1056
1056
  lines.push(`<div class="diff-line added">+ ${filename}</div>`);
1057
1057
  });
@@ -1069,63 +1069,74 @@ function escapeHtml(text) {
1069
1069
  function commitChanges(containerId) {
1070
1070
  const commitMessage = document.getElementById('commit-message').value.trim();
1071
1071
  if (!commitMessage) {
1072
- alert('Please enter a commit message');
1072
+ alert(I18n.t('changes.commitMessageRequired'));
1073
1073
  return;
1074
1074
  }
1075
1075
 
1076
1076
  const btn = document.getElementById('commit-btn');
1077
1077
  btn.disabled = true;
1078
- btn.textContent = 'Committing...';
1078
+ btn.textContent = I18n.t('changes.committing');
1079
1079
 
1080
1080
  socket.emit('commit-changes', { containerId, commitMessage });
1081
1081
 
1082
1082
  // Handle commit result
1083
1083
  socket.once('commit-success', () => {
1084
- btn.textContent = '✓ Committed';
1084
+ btn.textContent = I18n.t('changes.committed');
1085
1085
  btn.style.background = '#238636';
1086
1086
 
1087
1087
  // Show push section
1088
1088
  document.getElementById('push-section').style.display = 'block';
1089
1089
 
1090
- updateStatus('connected', '✓ Changes committed successfully');
1090
+ updateStatus('connected', I18n.t('status.commitSuccess'));
1091
1091
  });
1092
1092
 
1093
1093
  socket.once('commit-error', (error) => {
1094
1094
  btn.disabled = false;
1095
- btn.textContent = 'Commit Changes';
1096
- alert(`Commit failed: ${error.message}`);
1097
- updateStatus('error', `Commit failed: ${error.message}`);
1095
+ btn.textContent = I18n.t('changes.commitButton');
1096
+ alert(I18n.t('status.commitFailed').replace('{{message}}', error.message));
1097
+ updateStatus('error', I18n.t('status.commitFailed').replace('{{message}}', error.message));
1098
1098
  });
1099
1099
  }
1100
1100
 
1101
1101
  function pushChanges(containerId) {
1102
- const branchName
1103
- = document.getElementById('branch-name').value.trim() || 'claude-changes';
1102
+ const branchNameInput = document.getElementById('push-branch-name');
1103
+ const branchName = branchNameInput?.value?.trim() || 'claude-changes';
1104
1104
 
1105
1105
  const btn = document.getElementById('push-btn');
1106
1106
  btn.disabled = true;
1107
- btn.textContent = 'Pushing...';
1107
+ btn.textContent = I18n.t('changes.pushing');
1108
1108
 
1109
1109
  socket.emit('push-changes', { containerId, branchName });
1110
1110
 
1111
- // Handle push result
1112
- socket.once('push-success', () => {
1113
- btn.textContent = '✓ Pushed to GitHub';
1111
+ // Handle push result with proper cleanup
1112
+ const handlers = { success: null, error: null };
1113
+
1114
+ handlers.success = () => {
1115
+ btn.textContent = I18n.t('changes.pushedToRemote');
1114
1116
  btn.style.background = '#238636';
1115
- updateStatus('connected', `✓ Changes pushed to remote ${branchName}`);
1117
+ updateStatus('connected', I18n.t('status.pushSuccess').replace('{{branch}}', branchName));
1116
1118
 
1117
1119
  // Clear the changes tab after successful push
1118
1120
  setTimeout(() => {
1119
1121
  clearChangesTab();
1120
1122
  }, 3000);
1121
- });
1122
1123
 
1123
- socket.once('push-error', (error) => {
1124
+ // Remove error handler to prevent it from firing
1125
+ socket.off('push-error', handlers.error);
1126
+ };
1127
+
1128
+ handlers.error = (error) => {
1124
1129
  btn.disabled = false;
1125
- btn.textContent = 'Push to Remote';
1126
- alert(`Push failed: ${error.message}`);
1127
- updateStatus('error', `Push failed: ${error.message}`);
1128
- });
1130
+ btn.textContent = I18n.t('changes.pushButton');
1131
+ alert(I18n.t('status.pushFailed').replace('{{message}}', error.message));
1132
+ updateStatus('error', I18n.t('status.pushFailed').replace('{{message}}', error.message));
1133
+
1134
+ // Remove success handler to prevent it from firing
1135
+ socket.off('push-success', handlers.success);
1136
+ };
1137
+
1138
+ socket.once('push-success', handlers.success);
1139
+ socket.once('push-error', handlers.error);
1129
1140
  }
1130
1141
 
1131
1142
  // Handle keyboard shortcuts
@@ -22,7 +22,28 @@
22
22
  },
23
23
  "changes": {
24
24
  "noChangesTitle": "No changes detected",
25
- "noChangesDescription": "Claude hasn't made any changes yet. Changes will appear here automatically when Claude modifies files."
25
+ "noChangesDescription": "Claude hasn't made any changes yet. Changes will appear here automatically when Claude modifies files.",
26
+ "changesSummary": "Changes Summary:",
27
+ "commitChanges": "💾 Commit Changes",
28
+ "commitMessage": "Enter commit message...",
29
+ "commitMessageRequired": "Please enter a commit message",
30
+ "commitButton": "Commit Changes",
31
+ "committing": "Committing...",
32
+ "committed": "✓ Committed",
33
+ "pushToRemote": "🚀 Push to Remote",
34
+ "branchName": "Branch name:",
35
+ "pushButton": "Push to Remote",
36
+ "pushing": "Pushing...",
37
+ "pushedToRemote": "✓ Pushed to Remote",
38
+ "diffStats": "{{files}} file(s), +{{additions}} -{{deletions}}",
39
+ "fileStatus": "📄 File Status:",
40
+ "changes": "📝 Changes:",
41
+ "newFiles": "📁 New Files:",
42
+ "fileStatusNew": "New file",
43
+ "fileStatusModified": "Modified",
44
+ "fileStatusDeleted": "Deleted",
45
+ "fileStatusAdded": "Added",
46
+ "fileStatusUnknown": "Status: {{status}}"
26
47
  },
27
48
  "status": {
28
49
  "connected": "Connected",
@@ -40,7 +61,8 @@
40
61
  "syncFailed": "Sync failed: {{message}}",
41
62
  "commitSuccess": "✓ Changes committed successfully",
42
63
  "commitFailed": "Commit failed: {{message}}",
43
- "pushSuccess": "✓ Changes pushed to remote {{branch}}"
64
+ "pushSuccess": "✓ Changes pushed to remote {{branch}}",
65
+ "pushFailed": "Push failed: {{message}}"
44
66
  },
45
67
  "messages": {
46
68
  "reconnecting": "Reconnecting...",
@@ -22,7 +22,28 @@
22
22
  },
23
23
  "changes": {
24
24
  "noChangesTitle": "未检测到更改",
25
- "noChangesDescription": "Claude 尚未进行任何更改。当 Claude 修改文件时,更改将自动显示在此处。"
25
+ "noChangesDescription": "Claude 尚未进行任何更改。当 Claude 修改文件时,更改将自动显示在此处。",
26
+ "changesSummary": "更改摘要:",
27
+ "commitChanges": "💾 提交更改",
28
+ "commitMessage": "输入提交信息...",
29
+ "commitMessageRequired": "请输入提交信息",
30
+ "commitButton": "提交更改",
31
+ "committing": "正在提交...",
32
+ "committed": "✓ 已提交",
33
+ "pushToRemote": "🚀 推送到远程",
34
+ "branchName": "分支名称:",
35
+ "pushButton": "推送到远程",
36
+ "pushing": "正在推送...",
37
+ "pushedToRemote": "✓ 已推送到远程",
38
+ "diffStats": "{{files}} 个文件,+{{additions}} -{{deletions}}",
39
+ "fileStatus": "📄 文件状态:",
40
+ "changes": "📝 更改内容:",
41
+ "newFiles": "📁 新文件:",
42
+ "fileStatusNew": "新文件",
43
+ "fileStatusModified": "已修改",
44
+ "fileStatusDeleted": "已删除",
45
+ "fileStatusAdded": "已添加",
46
+ "fileStatusUnknown": "状态: {{status}}"
26
47
  },
27
48
  "status": {
28
49
  "connected": "已连接",
@@ -40,7 +61,8 @@
40
61
  "syncFailed": "同步失败: {{message}}",
41
62
  "commitSuccess": "✓ 更改已成功提交",
42
63
  "commitFailed": "提交失败: {{message}}",
43
- "pushSuccess": "✓ 更改已推送到远程分支 {{branch}}"
64
+ "pushSuccess": "✓ 更改已推送到远程分支 {{branch}}",
65
+ "pushFailed": "推送失败: {{message}}"
44
66
  },
45
67
  "messages": {
46
68
  "reconnecting": "正在重新连接...",