From 41a25b0419208d9a971b6b92c7a09fb17a0bc4b8 Mon Sep 17 00:00:00 2001 From: Kabi <48044253+Kabi10@users.noreply.github.com> Date: Sat, 27 Jun 2026 07:06:59 +0000 Subject: [PATCH 1/3] feat: add portable AGENTS.md output (--agents, --all) + non-interactive --yes - compose.js: buildAgentsBlock/writeRulesAgentsMd emit AGENTS.md as plain markdown (Cursor, Copilot, Codex, Claude Code) with a single H1; module headings demoted to ##. Managed-block markers preserve hand-edited content on regeneration; foreign files are appended to, not clobbered. - cli.js: --agents, --all, --yes/-y, -h/--help, mutual-exclusion check, and an always-on token size warning (>~2000 tokens). - tests/agents.test.js: create / regen-preserves-user-content / foreign-file / plain-markdown (no globs/alwaysApply) coverage. - package.json: fix test glob to tests/*.test.js (CI needs no bash globstar), bump to 1.2.0, broaden description + keywords (agents-md, claude, copilot...). - CI: GitHub Actions test matrix (Node 18/20/22) + non-interactive smoke test. --- .github/workflows/ci.yml | 47 ++++++++++++ README.md | 129 ++++++++++++++++++++++++------- package.json | 16 +++- src/cli.js | 160 ++++++++++++++++++++++++++++++++++----- src/compose.js | 86 +++++++++++++++++++++ tests/agents.test.js | 109 ++++++++++++++++++++++++++ 6 files changed, 497 insertions(+), 50 deletions(-) create mode 100644 .github/workflows/ci.yml create mode 100644 tests/agents.test.js diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b321777 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,47 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + node-version: [18, 20, 22] + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + + - name: Install dependencies + run: npm install + + - name: Run tests + run: npm test + + smoke: + # Proves the headline claim — the CLI runs non-interactively and writes files. + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - run: npm install + - name: Smoke test the CLI in a sample project + run: | + mkdir -p /tmp/sample && cd /tmp/sample + echo '{"dependencies":{"next":"14.0.0","typescript":"5.0.0"}}' > package.json + node "$GITHUB_WORKSPACE/src/cli.js" --all --yes + test -f .cursor/rules/030-nextjs.mdc && echo "✅ .mdc generated" || (echo "❌ no .mdc" && exit 1) + test -f AGENTS.md && echo "✅ AGENTS.md generated" || (echo "❌ no AGENTS.md" && exit 1) + grep -q "cursor-compose:start" AGENTS.md && echo "✅ managed markers present" || (echo "❌ no markers" && exit 1) + ! grep -q "alwaysApply:" AGENTS.md && echo "✅ AGENTS.md is plain markdown" || (echo "❌ frontmatter leaked into AGENTS.md" && exit 1) diff --git a/README.md b/README.md index c9174ae..c147e21 100644 --- a/README.md +++ b/README.md @@ -1,54 +1,127 @@ +
+ # cursor-compose -Auto-detect your project's stack and generate Cursor project rules in one command. No cloning required. +**Stop hand-writing AI coding rules. Detect your stack, generate them — for every tool.** + +One command scans your project, detects your frameworks, and writes a tailored rules file. Output a portable **`AGENTS.md`** (read by Cursor, Copilot, Codex & Claude Code) or Cursor's native `.cursor/rules/*.mdc` — from one source. + +[![npm version](https://img.shields.io/npm/v/cursor-compose.svg)](https://www.npmjs.com/package/cursor-compose) +[![CI](https://github.com/Kabi10/cursor-rules/actions/workflows/ci.yml/badge.svg)](https://github.com/Kabi10/cursor-rules/actions/workflows/ci.yml) +[![Node](https://img.shields.io/node/v/cursor-compose.svg)](https://nodejs.org) +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) + +
+ +```bash +npx cursor-compose --agents # → AGENTS.md, works across every major AI editor +``` + + +![demo](docs/demo.gif) + +--- + +## Why + +Everyone is pasting the same recycled rules files between projects. They go stale, they don't match your actual stack, and every editor wants its own format. + +`cursor-compose` reads your **real dependencies** (`package.json`, `requirements.txt`, `pubspec.yaml`) and composes a rules file from modular, stack-specific building blocks — and writes it as the portable **`AGENTS.md`** standard so the same source works in Cursor, Copilot, Codex and Claude Code. Zero config to start. + +## Usage ```bash -npx cursor-compose +# In your project root: +npx cursor-compose # default → per-module .cursor/rules/*.mdc +npx cursor-compose --agents # → AGENTS.md (portable, cross-tool) +npx cursor-compose --all # → both .mdc and AGENTS.md, one pass ``` -Writes `.cursor/rules/project.mdc` — the current Cursor format. Legacy `.cursorrules` also supported. +It will: +1. **Scan** your project for dependency files. +2. **Show** the modules it detected and let you toggle optional ones. +3. **Write** your chosen output(s). -## What it does +No install, no config file required. -1. Scans your project for `package.json`, `requirements.txt`, `pubspec.yaml`, etc. -2. Shows which modules were detected, lets you toggle extras -3. Writes a composed `.cursor/rules/project.mdc` to your project root +### Flags -## Detected stacks +| Flag | Output | +|---|---| +| _(default)_ | per-module `.cursor/rules/*.mdc` (current Cursor format) | +| `--agents` | `AGENTS.md` at repo root — portable across Cursor, Copilot, Codex, Claude Code | +| `--all` | both `.mdc` and `AGENTS.md` in one pass | +| `--legacy` | a single `.cursorrules` file | +| `--yes`, `-y` | non-interactive: use detected modules, no prompts (great for CI/scripts) | +| `-h`, `--help` | show help | -| File found | Modules added | -|-----------|--------------| -| `next` in package.json | `nextjs` + `typescript` | -| `typescript` in package.json | `typescript` | -| `@supabase/supabase-js` | `supabase` | -| `drizzle-orm` | `drizzle` | -| `shadcn` / `@radix-ui` | `shadcn` | -| `fastapi` in requirements.txt | `fastapi` | -| `flutter:` in pubspec.yaml | `flutter` | +### AGENTS.md is safe to hand-edit -`core` is always included. +The generated content lives between managed markers: + +```markdown + +# AGENTS.md +...generated from your stack... + + +## Your own notes (preserved on regenerate) +``` + +Re-running `--agents` only replaces the managed block — anything you add outside it is kept. + +## What it detects + +| Auto-detected | From | +|---|---| +| Next.js + TypeScript | `package.json` | +| Supabase | `package.json` | +| Drizzle ORM | `package.json` | +| shadcn / Radix UI | `package.json` | +| FastAPI | `requirements.txt` | +| Flutter | `pubspec.yaml` | + +Core conventions always load by default. ## Optional modules -Select these manually during init: +Toggle these on during the interactive prompt: -- `saas` — multi-tenancy, billing, feature flags -- `ecommerce` — cart, checkout, inventory, payments -- `claude-code` — CLAUDE.md conventions, memory system -- `agentic` — agent loop patterns, tool use safety +- **`saas`** — multi-tenancy, billing, auth patterns +- **`ecommerce`** — cart, checkout, payment flows +- **`claude-code`** — `CLAUDE.md` / documentation conventions +- **`agentic`** — agent & tool-calling patterns ## Requirements -Node.js 18+ +- Node.js 18+ + +## Roadmap + +- [ ] **`cursor-compose check`** — CI command that fails the build when your committed rules drift from your actual dependencies. +- [ ] More stacks (Django, Rails, SvelteKit, Expo). -## Modular builder (advanced) +Want a stack supported? [Open an issue](https://github.com/Kabi10/cursor-rules/issues) or send a PR — adding a module is just a markdown file (see [CONTRIBUTING.md](CONTRIBUTING.md)). -If you prefer to compose rules with a script instead of `npx`, the original -`build-rules.ps1` (Windows) and `build-rules.sh` (Unix) are still available after cloning. +## How it works + +``` +src/ + cli.js # interactive prompt + orchestration + flags + detect.js # reads dependency files → detected modules + compose.js # assembles selected modules; writes .mdc / .cursorrules / AGENTS.md + frontmatter.js # Cursor .mdc YAML frontmatter (not used for AGENTS.md) +modules/ # one .md per framework — the rule building blocks +patterns/ # reusable code-organization patterns +``` ## Contributing -See [CONTRIBUTING.md](CONTRIBUTING.md). Adding a new module is just adding a `.md` file to `modules/`. +New modules are welcome and easy — drop a markdown file in `modules/`. See [CONTRIBUTING.md](CONTRIBUTING.md). ## License diff --git a/package.json b/package.json index b690c93..f8cd640 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "cursor-compose", - "version": "1.1.0", - "description": "Auto-detect your stack and generate Cursor project rules (.cursor/rules/project.mdc). npx cursor-compose", + "version": "1.2.0", + "description": "Auto-detect your stack and generate AI editor rules — AGENTS.md (Cursor, Copilot, Codex, Claude Code) or Cursor .mdc. npx cursor-compose", "type": "module", "bin": { "cursor-compose": "src/cli.js" @@ -11,7 +11,7 @@ "modules/" ], "scripts": { - "test": "node --test tests/**/*.test.js" + "test": "node --test tests/*.test.js" }, "dependencies": { "kleur": "^4.1.5", @@ -24,8 +24,16 @@ "cursor", "cursorrules", "cursor-ai", + "agents-md", + "agents.md", + "ai", + "llm", + "claude", + "copilot", + "codex", "developer-tools", - "cli" + "cli", + "npx" ], "license": "MIT", "homepage": "https://github.com/Kabi10/cursor-rules", diff --git a/src/cli.js b/src/cli.js index 1de034b..378cde0 100644 --- a/src/cli.js +++ b/src/cli.js @@ -1,10 +1,17 @@ #!/usr/bin/env node import prompts from 'prompts'; import kleur from 'kleur'; -import { existsSync, readdirSync } from 'fs'; +import { existsSync, readdirSync, readFileSync } from 'fs'; import { join } from 'path'; import { detectModules } from './detect.js'; -import { writeRulesMdc, writeRulesLegacy, estimateTokens, composeModules } from './compose.js'; +import { + writeRulesMdc, + writeRulesLegacy, + writeRulesAgentsMd, + estimateTokens, + composeModules, + AGENTS_START, +} from './compose.js'; const ALL_MODULES = [ 'core', @@ -21,6 +28,26 @@ const ALL_MODULES = [ 'agentic', ]; +// Warn when an always-on AGENTS.md gets large enough to eat real context. +const TOKEN_WARN_THRESHOLD = 2000; + +const HELP = ` +${kleur.bold('cursor-compose')} — detect your stack and generate AI editor rules + +${kleur.bold('Usage:')} cursor-compose [options] + +${kleur.bold('Options:')} + ${kleur.cyan('(default)')} write per-module .mdc files to .cursor/rules/ + ${kleur.cyan('--agents')} write AGENTS.md (portable: Cursor, Copilot, Codex, Claude Code) + ${kleur.cyan('--all')} write both .cursor/rules/*.mdc and AGENTS.md + ${kleur.cyan('--legacy')} write a single .cursorrules file + ${kleur.cyan('--yes, -y')} non-interactive: use detected modules, update/overwrite without prompts + ${kleur.cyan('-h, --help')} show this help + +AGENTS.md is written between managed markers; anything you add outside them is +preserved when you regenerate. +`; + // Exit cleanly on Ctrl+C process.on('SIGINT', () => { console.log(kleur.yellow('\nCancelled.')); @@ -28,6 +55,13 @@ process.on('SIGINT', () => { }); async function main() { + const argv = process.argv.slice(2); + + if (argv.includes('-h') || argv.includes('--help')) { + console.log(HELP); + process.exit(0); + } + // Node version check const [major] = process.versions.node.split('.').map(Number); if (major < 18) { @@ -37,8 +71,16 @@ async function main() { process.exit(1); } - // --legacy flag - const isLegacy = process.argv.includes('--legacy'); + // Output mode flags ({--agents, --legacy, --all} are mutually exclusive). + const isAgents = argv.includes('--agents'); + const isLegacy = argv.includes('--legacy'); + const isAll = argv.includes('--all'); + const isYes = argv.includes('--yes') || argv.includes('-y'); + + if ([isAgents, isLegacy, isAll].filter(Boolean).length > 1) { + console.error(kleur.red('Choose only one of --agents / --legacy / --all.')); + process.exit(1); + } console.log(kleur.bold('\ncursor-compose\n')); @@ -50,26 +92,44 @@ async function main() { console.log(kleur.dim('No stack detected — select modules manually.\n')); } - // Module selection - const { selected } = await prompts({ - type: 'multiselect', - name: 'selected', - message: 'Select modules (space to toggle, enter to confirm):', - choices: ALL_MODULES.map((m) => ({ - title: m, - value: m, - selected: detected.includes(m), - })), - min: 1, - }); + // Module selection (skipped in non-interactive mode). + let selected; + if (isYes) { + selected = detected.length > 0 ? detected : ['core']; + console.log(kleur.dim('Non-interactive: using ') + selected.join(', ') + '\n'); + } else { + ({ selected } = await prompts({ + type: 'multiselect', + name: 'selected', + message: 'Select modules (space to toggle, enter to confirm):', + choices: ALL_MODULES.map((m) => ({ + title: m, + value: m, + selected: detected.includes(m), + })), + min: 1, + })); + } if (!selected || selected.length === 0) { console.log(kleur.yellow('No modules selected. Exiting.')); process.exit(0); } + // Reports estimated tokens for an always-on file and warns when it's large. + const reportTokens = () => { + const tokens = estimateTokens(composeModules(selected)); + if (tokens > TOKEN_WARN_THRESHOLD) { + console.log( + kleur.yellow(`\n⚠ AGENTS.md is ~${tokens} tokens (${selected.length} modules).`) + + kleur.dim(' Consider fewer modules to save context.') + ); + } + return tokens; + }; + + // --legacy: single .cursorrules file if (isLegacy) { - // Legacy: single .cursorrules file const outFile = '.cursorrules'; if (existsSync(outFile)) { const { action } = await prompts({ @@ -94,7 +154,35 @@ async function main() { return; } - // Modern: one .mdc per module in .cursor/rules/ + // --agents: portable AGENTS.md (managed block) + if (isAgents) { + const tokens = reportTokens(); + const onForeignFile = await resolveForeignDecision(isYes); + const result = writeRulesAgentsMd(selected, process.cwd(), { onForeignFile }); + if (result.action === 'cancelled') { + console.log(kleur.yellow('Cancelled.')); + process.exit(0); + } + console.log('\n' + kleur.green('Done! ') + `${actionVerb(result.action)} ${kleur.bold('AGENTS.md')} (~${tokens} tokens)`); + console.log(kleur.dim('Works with Cursor, Copilot, Codex & Claude Code.\n')); + return; + } + + // --all: per-module .mdc AND AGENTS.md in one pass + if (isAll) { + const written = writeRulesMdc(selected); + const tokens = reportTokens(); + const onForeignFile = await resolveForeignDecision(isYes); + const result = writeRulesAgentsMd(selected, process.cwd(), { onForeignFile }); + console.log('\n' + kleur.green('Done! ') + `Wrote ${written.length} rule file(s) to ${kleur.bold('.cursor/rules/')}`); + if (result.action !== 'cancelled') { + console.log(kleur.green(' ') + `${actionVerb(result.action)} ${kleur.bold('AGENTS.md')} (~${tokens} tokens)`); + } + console.log(kleur.dim('Restart Cursor to apply.\n')); + return; + } + + // Default: one .mdc per module in .cursor/rules/ const rulesDir = join(process.cwd(), '.cursor', 'rules'); const existingMdc = existsSync(rulesDir) ? readdirSync(rulesDir).filter(f => f.endsWith('.mdc')) @@ -124,6 +212,42 @@ async function main() { console.log(kleur.dim('\nRestart Cursor to apply.\n')); } +/** + * Resolves how to handle an existing AGENTS.md, returning a sync callback for + * writeRulesAgentsMd. Only a foreign file (exists, no managed markers) prompts; + * a missing file or one with markers is handled non-destructively by the writer. + */ +async function resolveForeignDecision(isYes) { + const p = join(process.cwd(), 'AGENTS.md'); + if (!existsSync(p)) return () => 'append'; + if (readFileSync(p, 'utf8').includes(AGENTS_START)) return () => 'append'; + if (isYes) return () => 'append'; + + const { action } = await prompts({ + type: 'select', + name: 'action', + message: `${kleur.yellow('AGENTS.md')} exists without cursor-compose markers:`, + choices: [ + { title: 'Append a managed block (keep existing content)', value: 'append' }, + { title: 'Overwrite the whole file', value: 'overwrite' }, + { title: 'Cancel', value: 'cancel' }, + ], + initial: 0, + }); + const decision = action || 'cancel'; + return () => decision; +} + +function actionVerb(action) { + switch (action) { + case 'created': return 'Created'; + case 'updated': return 'Updated'; + case 'appended': return 'Appended managed block to'; + case 'overwritten': return 'Overwrote'; + default: return 'Wrote'; + } +} + main().catch((err) => { console.error(kleur.red('Error: ') + err.message); process.exit(1); diff --git a/src/compose.js b/src/compose.js index 7e0f0cb..8a240ea 100644 --- a/src/compose.js +++ b/src/compose.js @@ -6,6 +6,11 @@ import { FRONTMATTER, buildFrontmatter } from './frontmatter.js'; const __dirname = dirname(fileURLToPath(import.meta.url)); const MODULES_DIR = join(__dirname, '..', 'modules'); +// Markers delimiting cursor-compose's managed region inside AGENTS.md. +// Content outside these markers is preserved across regenerations. +export const AGENTS_START = ''; +export const AGENTS_END = ''; + /** * Loads selected module .md files and concatenates them (legacy single-file mode). * @@ -84,6 +89,87 @@ export function writeRulesLegacy(moduleIds, cwd = process.cwd()) { return outPath; } +/** + * Builds the managed AGENTS.md block for the selected modules. + * + * AGENTS.md is the portable, cross-tool standard (Cursor, Copilot, Codex, + * Claude Code), so this is plain markdown — NOT the Cursor-specific .mdc + * frontmatter. Each module's top-level `# Heading` is demoted to `## Heading` + * so the composed file keeps a single H1. + * + * @param {string[]} moduleIds + * @returns {string} the managed block, wrapped in start/end markers + */ +export function buildAgentsBlock(moduleIds) { + const sections = moduleIds.map((id) => { + const modPath = join(MODULES_DIR, `${id}.md`); + if (!existsSync(modPath)) { + console.warn(`Warning: module "${id}" not found, skipping`); + return null; + } + const content = readFileSync(modPath, 'utf8').trim(); + // Demote module headings so AGENTS.md has a single top-level H1. + return content.replace(/^# /gm, '## '); + }).filter(Boolean); + + const header = + '# AGENTS.md\n\n' + + ''; + + const body = [header, ...sections].join('\n\n'); + return `${AGENTS_START}\n${body}\n${AGENTS_END}`; +} + +/** + * Writes/updates AGENTS.md at the project root using a managed block, so the + * tool can be re-run without clobbering content a user added by hand. + * + * - No file → create it. + * - Has markers → replace only the managed block, preserve everything else. + * - Foreign file → decision via opts.onForeignFile() returning + * 'append' | 'overwrite' | 'cancel' (defaults to 'append'). + * + * @param {string[]} moduleIds + * @param {string} cwd - target directory (defaults to process.cwd()) + * @param {{ onForeignFile?: () => ('append'|'overwrite'|'cancel') }} [opts] + * @returns {{ outPath: string, action: ('created'|'updated'|'appended'|'overwritten'|'cancelled') }} + */ +export function writeRulesAgentsMd(moduleIds, cwd = process.cwd(), opts = {}) { + const outPath = join(cwd, 'AGENTS.md'); + const block = buildAgentsBlock(moduleIds); + + if (!existsSync(outPath)) { + writeFileSync(outPath, block + '\n', 'utf8'); + return { outPath, action: 'created' }; + } + + const existing = readFileSync(outPath, 'utf8'); + const startIdx = existing.indexOf(AGENTS_START); + const endIdx = existing.indexOf(AGENTS_END); + + if (startIdx !== -1 && endIdx !== -1 && endIdx > startIdx) { + const before = existing.slice(0, startIdx); + const after = existing.slice(endIdx + AGENTS_END.length); + writeFileSync(outPath, `${before}${block}${after}`, 'utf8'); + return { outPath, action: 'updated' }; + } + + // Foreign file with no managed markers — don't silently destroy it. + const decision = opts.onForeignFile ? opts.onForeignFile() : 'append'; + if (decision === 'cancel') { + return { outPath, action: 'cancelled' }; + } + if (decision === 'overwrite') { + writeFileSync(outPath, block + '\n', 'utf8'); + return { outPath, action: 'overwritten' }; + } + const sep = existing.endsWith('\n') ? '\n' : '\n\n'; + writeFileSync(outPath, `${existing}${sep}${block}\n`, 'utf8'); + return { outPath, action: 'appended' }; +} + /** * @deprecated Use writeRulesMdc or writeRulesLegacy directly. * Kept for backwards compat with existing tests. diff --git a/tests/agents.test.js b/tests/agents.test.js new file mode 100644 index 0000000..dfcaede --- /dev/null +++ b/tests/agents.test.js @@ -0,0 +1,109 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { mkdtempSync, readFileSync, writeFileSync, rmSync } from 'node:fs'; +import { tmpdir } from 'node:os'; +import { join } from 'node:path'; +import { + writeRulesAgentsMd, + buildAgentsBlock, + AGENTS_START, + AGENTS_END, +} from '../src/compose.js'; + +function tmp() { + return mkdtempSync(join(tmpdir(), 'cc-agents-')); +} + +test('creates AGENTS.md with managed markers and a single H1', () => { + const dir = tmp(); + try { + const { outPath, action } = writeRulesAgentsMd(['core'], dir); + assert.equal(action, 'created'); + const content = readFileSync(outPath, 'utf8'); + + assert.ok(content.includes(AGENTS_START), 'has start marker'); + assert.ok(content.includes(AGENTS_END), 'has end marker'); + + // Exactly one top-level H1 (the AGENTS.md title); module titles demoted to ##. + const h1s = content.split('\n').filter((l) => /^# /.test(l)); + assert.equal(h1s.length, 1, 'exactly one H1'); + assert.equal(h1s[0], '# AGENTS.md'); + assert.ok(/^## /m.test(content), 'module headings demoted to H2'); + } finally { + rmSync(dir, { recursive: true, force: true }); + } +}); + +test('AGENTS.md is plain markdown — no Cursor frontmatter', () => { + const dir = tmp(); + try { + const { outPath } = writeRulesAgentsMd(['core', 'typescript'], dir); + const content = readFileSync(outPath, 'utf8'); + assert.ok(!content.includes('alwaysApply:'), 'no alwaysApply'); + assert.ok(!content.includes('globs:'), 'no globs'); + } finally { + rmSync(dir, { recursive: true, force: true }); + } +}); + +test('regeneration replaces the managed block but preserves user content', () => { + const dir = tmp(); + try { + const { outPath } = writeRulesAgentsMd(['core'], dir); + // User appends custom content after the managed block. + const custom = '\n\n## Team notes\nDo not deploy on Fridays.\n'; + writeFileSync(outPath, readFileSync(outPath, 'utf8') + custom, 'utf8'); + + const { action } = writeRulesAgentsMd(['core', 'typescript'], dir); + assert.equal(action, 'updated'); + + const after = readFileSync(outPath, 'utf8'); + assert.ok(after.includes('Do not deploy on Fridays.'), 'user content preserved'); + // New module set reflected inside the block. + const block = buildAgentsBlock(['core', 'typescript']); + assert.ok(after.includes(block), 'managed block updated to new module set'); + // Still exactly one managed region. + assert.equal(after.split(AGENTS_START).length - 1, 1, 'single start marker'); + } finally { + rmSync(dir, { recursive: true, force: true }); + } +}); + +test('foreign AGENTS.md (no markers) is appended to, not clobbered', () => { + const dir = tmp(); + try { + const outPath = join(dir, 'AGENTS.md'); + writeFileSync(outPath, '# My hand-written rules\nKeep me.\n', 'utf8'); + + const { action } = writeRulesAgentsMd(['core'], dir, { + onForeignFile: () => 'append', + }); + assert.equal(action, 'appended'); + + const content = readFileSync(outPath, 'utf8'); + assert.ok(content.includes('Keep me.'), 'original content preserved'); + assert.ok(content.includes(AGENTS_START), 'managed block appended'); + } finally { + rmSync(dir, { recursive: true, force: true }); + } +}); + +test('foreign AGENTS.md can be overwritten or cancelled on request', () => { + const dir = tmp(); + try { + const outPath = join(dir, 'AGENTS.md'); + writeFileSync(outPath, 'old\n', 'utf8'); + + const cancelled = writeRulesAgentsMd(['core'], dir, { onForeignFile: () => 'cancel' }); + assert.equal(cancelled.action, 'cancelled'); + assert.equal(readFileSync(outPath, 'utf8'), 'old\n', 'unchanged on cancel'); + + const overwritten = writeRulesAgentsMd(['core'], dir, { onForeignFile: () => 'overwrite' }); + assert.equal(overwritten.action, 'overwritten'); + const content = readFileSync(outPath, 'utf8'); + assert.ok(!content.includes('old'), 'old content gone'); + assert.ok(content.includes(AGENTS_START), 'managed block written'); + } finally { + rmSync(dir, { recursive: true, force: true }); + } +}); From 4721354274520f6f9adf58005877055149891532 Mon Sep 17 00:00:00 2001 From: Kabi <48044253+Kabi10@users.noreply.github.com> Date: Sat, 27 Jun 2026 07:46:22 +0000 Subject: [PATCH 2/3] docs: add demo GIF (VHS) for README hero --- docs/demo.gif | Bin 0 -> 211467 bytes docs/demo.tape | 29 +++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 docs/demo.gif create mode 100644 docs/demo.tape diff --git a/docs/demo.gif b/docs/demo.gif new file mode 100644 index 0000000000000000000000000000000000000000..dbdbca7cb509f4073b104d4f4c508701b9d4a3cb GIT binary patch literal 211467 zcmeFZXHXMt*DgvYKtc_@_s~P{(jio7Dovz!5fBs+kq}Dgy@T{#480>Ep$bS70Rd?u zA}EL=Ai|FC^FH6}_wDn|dCxif{Ma*lh9AsiCNsI$z1F(cb*=l-)7Mo{bTlHWCirnB ziLXjYKtf9h1(A?5kno$50vSo^g#aw7;ha2U@mrEE)GsEekm>qZEiLmZUKHCRvsQ9IbH?; zFDnx-D+@0VAFrw-9~A)~D+fOd6F(OZznp=9oTwlht)R|52onQ@6%1izh42eQ1R)S{ z1tAVr5gI~KT^BJ`GjRbfahYopOq5VC5tNxpikDMLR76TjLdxWUEEAEeu8o|EuH1Dm z1!+k|VF5)QWhLt;%A8~>sTQiLDyrHh*OV00t~;qqim2N>)VPtN(c-8nNT;KtspFQY zQ);VgbW=}3N>B3|%*Iz=j8XrAm4TIsp}DQ0d!(_6k+H+G>*`9TL-)+&I4q1|mNw2e z+#cNwNWXdV)Jm1l%KC=2ftIbKm%Wv_gNLJ|`#r~iNGClBr>8~EH?F(7I=cG?dCo_A zx!C&zKJj^)=2I8tvk~uWuIPK;^`4{cJ!GlBzpww}$ommNL4Mv3Qfh+XaUu3PAzi6Y z?m9mSdk_|r5|-2SH1y%q#HW!-*-@V=qKi9Yyo_TW2gXbl#l<5MViAeiMM>4@)Q5JN z$neaf%B;flEYw(GWn*FQ>t}iCMbSQG*~u04WfhHWHC-=jh6ZcKHXAZR8fr=!`#YMu zx>_m=+ea2V7QS_Mc6X0sdMXlLwAH^D!3@0KL8AvpX5Nf!oQ$>Pjg5?rtEhWxM1kgKaJz!jc9fDMK! zMk4@p!giym5=;y=uR#H+C*2&hgZc~@f^n8tsm#AE$ZwiyW2j!K{>yCX57<$@V4{*r?ttR zjxX;95EPsyy`4u}qv;}drh2=MKTMYy7Mb*QfB&@D;{8s%GX}&YKNx?-dA+~)?09#s z?#`?JzMnr1w_X-qf6@Qz=jrjMcduT&xVpk4fvkrUF?g)Q0Rq+Q5y0V*w1?}mkc~+2 zO^=NzCb#O1XtoEt8!=qbkWJ)HQ+YUnU_mh#F7JA|-V5nJ8j7RR%tq))qB0nlEN|4*zElbfA z{#gDQUl_|6LF?sFAPCU@SXCS?yjNYGMZReuUNAin8`XanMUb<1<*--Zy5RMxp>uiM zJg$MmV7D%Algqmi%iz7=G%66kog6(FtH~nd6cSO25%xZ4TXd^CX#dp^NRS_S?dM+S z9J!@f$8Kfa=kEQTy@TRAu=tu*xcS@9eWyEhU-~^h3s<+!nAkQ_#((ubL<0otQAiOo zf6sw$=C+4};9EXNLrh;{ysF^jcF*JJ+(o~R@@4x-8WJh*H+6l;+yD9!I#M8JC=bkN zMiITNKb}(gVI(}c@iC?4l{VwuZ!^IJiQi_8N@)@yU`$)vwkiua1M0x6l^QkCnhTiKvwa9~yqFEpJ{;{&*KoYEt(ug3zlUT^lQ_W-&U*kaZ9to=^hBZyjV_hDOQumQd>CVA#*02-S-c>ML$0EH{fJTt}sp7C#5e zuXGe<99jzAU>p*%ISReeTguRvJtP)#6mt8bl&O$$STe6E*j1&BSZ!`bDXf^WbNX>L^LwOAIaN+h7>ew~@M= z*;_6!lr?4?65w5UQ4XnL7&psn_N-8;5Khb*ztNrM-Vj|P?!T9p_ zd74w-MFo_KVZxC``p%F_rPQ0u30I~2wv(ZiG7a>To;GtH!uLs?!Ito?^x3vX zo<0$K)!H|GUail=+8_>uA~R^(g_3C1dQG}ID}+>g6TuTvmtR6lV|y*lS#5%D(ju=W z0~QLO{i;{e60y0T*510QBIeasv;5ktrLD0|z{go+a_MSzA-BD+LF#^;t@GFRj=>8t zzb8T~8+*;2!)^Ql=^`)R3Gxakz1>t2((lU~35LaJ*l;)zrSg~)p$-uCgE z_M%xW`-@`t6`SoZrCc$hJ1^6^Ch}CJ^OWm$WD)IGlfE2c1zSGLigSu>5BjCOkLy3Y z`P%iW`ImIDx5%!>R{M1Hnpi2_!CM_^rOu=<8Gl}}k6Y&5v*Ud-mHBlajkP-Fo;?$< z*1EfDmaf!Oc}@1AMZ?~g=I+;sV;FmuS3yuy*@cslWeH_6b64|0iwF z;<>6^^Uu0{SHjMvDGq3B+1+(d3uW{|zZ{~a;ehmh&s*9{xlR$$&;HJxD?4k@?zw}F zpcZB9=P>!$EwL|jb3JRq{qp^`^GQ+`amA3Do%)mfn>{?#bGce~)~n&P-x!`ICC?)TynvJ=ipd%1I= zujO8J)!lDAwmR6H5w(oYsmo_05tiGO#o=-ZpUusuxF^4MO!=kn_{mz> zRZkzG#Azs9|KY_omCdV$(;;dT1x{vu&vVq^C^vb8h9&Ro;dl{qFA%5Z9I0>E5{yt6ftS zdwzi@@ZwDB@wIOoxo00o`py@sluufo{y4aQ=gZnv*ws6XMA$(3iwlIB+BxX?<#)mU zU!UDoF1D^t&*tuYJ$do;{qggs6J_OB@_bM5g5@#t;i05obYXnaA2nb#cB8t zS~%^fIM@ol7XW8MinDaWfkUAj5LI@jh()OgK7bilaKyNCgfLQ6bTI;)83Bc z&1I1`un@b&sH*HJ2bj`Lh3EwHXtzZ{kDTbo&CxzNg1)EG(C<+J9*>=@VshwWf|)cP zcE+Ta#e^vcgfk%>rI3-Q{L#Tk6`hzkE7gRnMWkvvGG&)9O(E9w7@5WNBqt|!{>RgT zMb*sHSk~6qQY)zvt2m{AxN0PCZD*X3PFy4MI*KV?P&&R9VALKQPd*pd4dCrvjOYCt zKfuH@sF1*Eo-iCN+m(|5T8x=M>c2cqpkqp$^?=V?B{BymE{?*NI}$g6!O9;Olf+Mx4w(@93dtGHNhcm$r#Z<)&B+%KuFKP8h4%>rA7${Z zQ&xGB0g92|J5!M5DU`X9M9is!@~PmDNQOtLsen|LGa=HYRAFo?S8NnWF)idcRe+2W zlA8w0OckwBEYdH}@?dZxNFB8kRTfk@pIjH&LB8HkvoQn}-494?yz! zVENr1`5nmo*6RGG(fr2U{5n8EHKd>dR#56uP=qWfs4mDIEy&s}NCyfE* zG04Km>O%NvVc2frW5BcEE6B4T*s}nSXZMiLe5#*$jy`kSedY`(a)1=wh85X(6x~7= zSymUBjTV{g78wGHVUS`SSh1!@u^O^irMg&gv{-JpSQ=0Qg_MZFN`yU11d%0t)g|1c zB^+u}$`?MA&yiM43sy|(RgAk=jKox6t18eV75yJ7dPplf z1uNV1Dx2LapT|_zS5?-GR91edEF-Nd7OX1NtIBh)%8seZsH#dGsY?1#6;E1?6s(TY ztB!E5ei~C9T2=ihccl8khwA&JHGYCMcSqQ>LTYmIYVx{k3YKf0o!1nz)RrpMmfO@; zhSXN))z)^`)-TsKp4XyS>YA16T5amuL+U#7>bkq@dY9|^&+7(Q>IaqTu{QO?A@!qq z_2b?36U+5e=k?Pp4YNuO^EM3&Aq|Up4a?mPE6WXQ=MC#Djhjl1+cu3mA&t9vjeFgV z`^$}=&l~U3Q2)(V;Lx8TQ569`9*)2O5aC_n2#mjIjQ>|3K=5essPUL^U)7IyTNLv8 z?sBUS2^Ggm5IQQJh=`6yCP(aTBk|Rx*tDhJCN_%kfk#5MsiRIbGdDwd4s|&!li$z= zct+)B6uE@t57wXM(}|Yx(!~n-yP4*T3hiw#neAwj85MH00&eUY#HvZKv4`BR1l3uo z?p=@{^BQJ2SckYQ64vW^FFj*6R-Re1EcSd7p|VV7*YP6!%8R#My&RyDCuL?nkweR` zBOS4M%7q?`BBl_(Gm5fy8Gfpu`31m!et$Up|DV(OUwF{}n|;;4?uGGx5CVi(zqEq= zxV0k4@4;|{z~+lMCL#NY9DiQDcuvU>ppZYGemb{VnB`cit6mx%@1Uq+x|?w}kN4UD zSwN*`F3;0T3c&xDyZXQI2!H=PmVaFPE4(W*Hkj!;slsZd@ykj-M=cg&-b>{iQ*Nzz za&7}Y*i6Yt)GHsKZ6x*9h$qk0!6FTBv^txDO&rAYD~|zO#I`?y+1X7qU*K*%HXMy1 zrePK@KOE53E{X$|$$`6h2~zINDRIYFncT_&%6JR6&XmOvP>-B;9p4bLR=ooR{`!_P zxxCoyp1g5PTtS!@_^$I1eh%E$X?D|)X^|I>ir|~xKVrTx^3sY%z6xL^tr@lU_yXkK zyUA2GIl)!iWw^~ulaXUG`xPZB2z4{rG?9?2eo`7tD!kgX&Tb0B#>Uf}#p?P$T248c zgzL{Z5CEYrsBlsl{Gdf$BJ%AyJ)kwOt-+Nk#MFRi9p6Nr?ZN1V?9w_kC5oP08$+LG znid-;YQD)6%R1wSCXk+mZ4paH$eU|G5Af!ac`oUw|BY)Pg$oh;-y!;i(LfbzM8GPA zCMx|{FrKSZq0|b8#X8JXjB=5X)KZ;zWwto*7<5w`&Pjy>JxwlpaHzxnq6Rd2l1bdo zVMQTr3m7NqzR;W75<472#d`@}EF+B}qmZ%dOeq~sl<`RY#kn(UON!TyjLh;R5>vu zy-nO4)Hr#m(QQ=A-W>R4J)Kh6Xy3tJcaf}|gvuW+O(sz7mj<9GKDl8NaYf`v=ynXF zji9A)aUh_ywuaF9!oQ=qy>neQq9`P(T`WBT&t|gJm64{J!WS-sg!FP7#TN3~44!-n zT^leh(g5t&Xs{7cEQT@z7uifJ`Ba>o1Dm0u315Z<& z+kJBxtk{q=8;MaMZp{KYNem3mPqjAPDYdDU!Xq|}Y;um#U=$BwNoWeU8c(7Yv>zx* zue#2r9<|BUJ>#ZbpsdTWflJgV9t#D(X;iUpT%t(2xrf~?t2qiOZHu!v z30_RgrR=e_KA9-anL8|8SRP5SzN*N99)5|09o1LR$UV zBmJV}_V{jQ+KakMt*Gr!NK=!lU!-3b(Mf^Ac|Mg(>)8(k5#VH_hICyMmv)<&|cnFnrcM&syb{qE2)vrS64j6ZoFF7EoVsu0as8t3ZC zQeD<_n?s9rCKlsD&8Q{m3Uvu+Go{$xp^IKDxKEwzQ-+6bBFp{T1KiUj3GLSn`$c;` z5rE>H+V)oSCk2P-iQf9YA2k!d4M+Mz7QAWsho0I;kgs_zY(>@P7|*Zt-YRp1M|%KM zRZi}{PqMhGp;jOr@tS38$bIIq`Hp}kcvW2HZJTgHPjJv)V*+j9AuFv><|o}grJ%c5 zTDvfDf}~2LjDdJ|s^<{I@wytnsFk0i2Fb~%Nwu}lf$NkJ^bf-+|LC4Ka3{w4cgk!q z!BAXDRDRvY`B`_lwPFM=$z(hZF&t48tZoG-3DMed^mJaK3bR|?UO!W;;d^vO0S%V`fB2PbHnP>rnJy1ci{-Vdt6Ou8cQL>Kf9~2~p&} zzUbN$#qT(kD$$mgvZ24C?1625g84>LrJMEY+WvI6`iz`U%4fTegCi8Ldz6|C_?plf zwPDTTNa)c9f~4docLwx+RCnRB)Z|V!t zYZ)nrniiW-D1MlWksl~VbF2qCZ^jC`9pf8ujT2!=ojq{(TzUcKEMVPsxj4E|0! z@hq%y`wK&nBgw?~_~w!R&U$ch-<8ECjLt-^vXh+)0T(E( z^$aFS0Var)PNgM>V@Ufp#K|d#N=?NPV@WiUY_JY>^kfdO=}=%1xNJE@%y->z^_aig zQ44z2PSIszc??Ic-njFP<0N15qiyV!_B7P-)OWM{;V*&(h!q#*c#OoI&6k~mAEa*+ zH{#u0BHHP}V4+@3vziltHID~R<&34&yGYk~({QNPvRE;2?hr*{6 zAGY)Sve8p=G4H4rWQjd5#)k=q9?V*64c`Oj_$)Z}H2g}QQwIpsRHg?HP%W@*Gfp%@ z>zx{3UN8?Z!^M0nQO>P2mVTCuZ!1|@2I4}ZX^+AK1sJ=OCQF%Vr??Z3(f>PO!{>ia zCyE!%#`%?gC4;`HQWta{(_DkmKt?GX*l^N`V3dw4SV){DX5D_kX;4Q|Db)e1Js;j=boQfr`EzX`o`{zMki>+B36_?SO8c zP`t+I0_l|WeEZgaG?1assl{sa16^;n=Q0GY(FEuADa+-pO+N~0v0aEb@K@xye_}8U zTcwQM&wClqAr=35WpCpsWuZG+@aoAj|E&spkAZ>k0}e(`xk^^=w&C=;I}!@*KXZwO zV)je7bxu~eH3fi77M|Zu`c6vDp8i~gPKS*r&KnEdMpHY4Gjh#MBB(V1N%{u(oeuYS zAevl%3rv3m<^k^f+5RqP zf29rMzZ!u1ZEA(-Vx7op2BpYRXuftFgO;1=Dau(ZnT|NRwUdh%o5-$4o$#SNW_0)-oVKE!Ot zgOp4xKGVgh`n57@YV*T&Pp^-d0spImV*mBozK|uPe{EVx!|+@t`m%?{nUF@Ur?ese z;RH2dwgiH5;qF{iEJ%H7w5eUPEVp_WfxrhaG7uF~2T3qeZQs6b$TrRnsJ~ry zVp{s(`TS84e^2F_V_76B=u-|Im2#t%qiuknwZJr`vH~iKC$G4aOu!160uEy%ZZA-m z8#=_bW7AB0ki16_t3yo?6GB6tA4~5Gk$gCpAb*>hLSc2g+Bs>NIz2o=X6h85EzdZ4L2frKxk!?i zsqz795GG#T!6+$JxdMN>DwAi|{Bw+iEF+CmEz- z%8g9x4${1zrB`qs1rY`ATj!T;;{hCgC~z+WBzHI9WtWc@;o&o?Zl=YM;&rd0I$6Yv zYoWT|+!B|6<>=>@s%zZ4RmXk}5$`jclyC0!#+jiKNkGu`Id&po{;twa(vWquhI-{n z=QSWu;p~Lcyl8z^@#YJ0+8c?4lz50_*|bxdiEFRHj?8*Hg&EIuZcLyeNNneuDOHZK zT1G64c;BhrKz$2i>eAoTXNc4xrDVbdeh>ogdNX-K;FX;pT%B{j*aFCj8_MOsUP{B=H-S7edH=O(iqB624UuPx%j2!K6Y|vYIog*n=V*NnH2f zbULUJw*(D(hujI@U^_P`oV(IMA_(3GoOr(NdBt>2kzd^Kjr()@7I9SXfnZO;cG{ ztVlZG>mXn+R&Lh*zzj?WB6C?^iC|QePSbj0#7L(hoXarXera*&|@6N%b#a?G^-}z)=3C5mTgl{VFY^)QqpzpZh{Et=k0Xp{w)SD z=YOuSY!s1y0TbU;@lNVsloN^L9Gjbq0%(&MPAJ0A>yN)R9L=m60albM!9=n2xEgRx z>m)GA2kgyTf8`tZS>u-6)p74HMB;mNrSd8>f-h zLk-1$bvTp8fYgIm4fXaJ6Qv~|GFG!t&^ zGOk_RzV~52s(86B)SIA0ezz4(;-_tHAe2^arX^~fyPZRXw?IS)WUxvZAYcwHwtaf3 z6O4&eI&hftdI$Xm)Ed(ua=fLzlo2kx9>}|uAm!CUVIfBQ9nDejJ0a9a#&A7qeZVP6 zQ_K&ZW^}VdJ(Z6A5uvecQxt}hSclp5&sz20cBzIxi`YLWPR^6Sza~y#k?TJuP9QnA zS0K`dWaue_1i8(rpK}Wprxpvga~ii4wUkm)&cr*Mm@f}lz@|F#VY0=mtXmG71f~iU z9=LI7e{~;A;>;E`E8&TN;|8hul$jQOBcztlH7`w_C=#`?#oQKw8a%@)e&>+#(HK$! z-Mu|B@Ak<8F%qK}B%q%XQ!k(@1$=dawFdMCJJY|$PR+Mus=@M1R;`I|3xRa%hqE1f z#umk({M=#<|Dgzj4>_64lA8E6VSPsTB4f`4NC{E#ZHi53xzDopX70+dTSfQQo4!~n zXyDycv-Qi%@0RD4i6Vw)3m*Hy9Q+;GjzA>tx+OHqwMfXONRcWnL9KzJ8vsaaoVw6Tt=7@o8!lgO{dm~1H))b^fQ1hPh^^!*ArR!9CKC{{qwY0W&Kws z&ZGqNa-AWKfoSeQVk$;)Br0W-AQ`H{>Gt@9X4jlDzLo5gZo{0&gC(G&D)~|FD@mDK z(Wa)O?-U$2zm;t9H`?UZFC^94#qQ#jg*6w<@4b0B27UOjAH9FtvZF>6_3e9rpZ*;P zdG8AMI76rVgpZ#XuR}Ri3W52#Xj8Q-RjO>63jZv?+W(FuVeVa;U7uKjgP96N@)M;L zO<{Q5L9Ds@O7Pv;@yv&Ys;GehQ&K6y7p3ZK*rT@);$wSHt0KS6mgl4k2F%+b5zHpg zWx;Wc+9yRv0k1f9g%~Xu?S;(AHMC?a0Ro}}6d{NL zNsWl%Nk~BxtNE03d&xAQ20;uP)Pz9jN+2On605F7PuvY~HdbN@M1WM+z=Sl*fm_?@ z*S!#2saj-FE2V?yFc~*`~YD!tw0YUS{DmWqr#E(e+>t0%zwA8I4RsredsV4MOmd72{CgRLNJ1*<`?}~ zMq)WZ0({nK8)Hu;o%R=L<{Ty{CT+4JgYijm!Ftfbv6^7rqs5}80c}eQ^`h;WsNn+q9=Yd~wjvq_#qWb(B^rYl+14o>R6HcDwn-ijo!(JEf?@X+8 z_>jZDFn40G0NWR)vT_pd-rBAE=>Dknl$MuRYk+cSfBj6^ZS?kW9{`6BlOs2XO@4}D z)9*v^+mpqlaUhXYX237YBxyCA@b0y5eh85KieHxfTt<3^x;$1LZre8sc0&H1iJj=}Ukw!Y* zFG50~^bKYw9S%4{rMfgt>rTF3|59b1|H9ezKP&PqE|`BSFTXcUr*$H%mMZxRDpMTW zZ!uod6d*ChwZ1@BrBJ5SO)P?pQM_OQv2R1ge@t~*UTQ?vn`R;p9R`%iwFGvS#&PcdF0F^V&H{PVU*R$GgGjHaFH zBnI{=8YIft@=Y~!bNveSTbn3C%A5b5IJ5GPl>99l|Fth{>Oi9Lmwr~F=^|~{34zg! zpd-nd-3my|a5^E8gi_!rlok6FqCp9+Y1$Zc<1}5%dE`7o372$&fxA+-$DYb~uVGUy zN=YMm_1q9$gb-sO4TET>Ur96#RV=i9{`8nLfmMd*RNpPBP|i72oa^8twbR^F9TQQc z_UF~6+gIHsPT^#{V+psr3Z_xsg%I&u-B`2x+}`GihC0O;A0U{RI|p_Z4k=F2pl7z6 zQ#owon$fVGLo>ue?MvckPZ=M8GIYpk6kF0_5kEk5gs@eEYo9(cR8;U-$oX(J4^1>a zp3YDZUrKTG_YIXvurdwb!;|?^|ELJR-|uvx(e&B{l;6mrR0n;+Oo6|0G3>L@J*5EO z$m|N*!5&lMer33&;p?FH7&1YH5~M&y22U)LtV6}?Cv20`^F|`;hj3!^+o%Cjal1$^ zt%V$!JPXD5d@05x?A7x!XAQfSrV1RyCh{sL!JyhtMp%WzFU8fleav6SNCEv9&%PWJAhf~Kpg2kK0BDyR%;TS21_|SwZt$6 z*aJ(@kj5b~h1FyO6#$vfNeAi7&9MKVA*(9iEmzi_B zhz9W#AcB`L_4e{Y(D9I~u6ZIG+Qg`d2%Y7ASkG*j)uEqr54s^0bbcL3$DwXM`M5%0 zBKOv@DI9-4oo_l;P#_2W;DDHrgm?nwy+Fb~mIizg{p+D7qA2Kew8F4slI?}JDl zC9pJ-Idv-Y{`c|h+FKnE>yI|G%d%ZRFZH{)U zZVQ-FshaX*I5INK4fvuRN``fhjis#&6jtyMWXx7UXkyM#RDoenA>SKgqE#YHlH@iF z16zP*C&CHnUAK+Zyyhm;jHGIeSpIjpHqzu*YGK^F1(QRpTX&PcHa>uloF z)?tQ3gLApd#-f*0%r73|MxuP)eAU2R(@J$l1w>jXpruS3Zgkm&$I@C!nk`Xvc7bb+ zbCn$6&+|;jW(ILMmH-LA;ci)D@BS5!4pDC!W!G>w;q-MlihO zjT=d!POQl3pgfx zWzUaTU-Or}oBC{R?U2K(7qHc9dj9?cF|&t?oaozc@181qh{pis_uS!g+=d6keaa90 zQpHV$Cc?I~_zZHV>#jc+nu^Jt<(%t8g@;9-f0u>@Q*jEOuySosb7@Hb34Jbcr}tk5 zN}}4o2g>LFX`nRzbD*Trh-Oom-O!C@SG(-dz&*cUrL~k@Is0mZWtYCU=5rR{++L&+ zwcuktyCGk0aMxbc^MG5gT9b4bnQBpDSZ8(5D-r#zWCkT}G=0hy5lzJj=wm26v2>cH zQA1KU1q|s?l^QFC5QSi(;z2zFxsTsWn$ncIF_vbiFCIo3yaWub$EJYcd0}Uo`Pza4SEbKfL4QB=yO= zdaXS}Nk{{uHvRXA4|4qf3^=Iu{%%#cHpFmAUy!3=rWplfbwfb>dC-VeDJ7Rq$T!}!Wy!r8pfE2Qy5Whm=;w~?m%Sg;hLc5{8|`W|o!x8`C#4b+9XBy4%;LHB zDw8QkR@p>vyvnV4MiFTsGG@`#VZf>2%TyxWdeKrN#3y@A;x1*>SW{ z9=Bxed?%d%DG_6uJ%pfQM<ru3|=b!H7iGD z1(0>PrCS){JOUC7n?-UrkK`&{^V12tu}Hf^LP*R-ba=S8QY*JquhCbN{vn1l^O+~% z50jPd8xKh+o{1b`=x=QHGe55I&e>9a$EU_$pH7kle2mhO4*W2ZX?dVdHLQQGOQNxv z5(Q`)h?N_8>QvVYSx{i}`rxZkngLw`qD zoRnSlDC3TS4&h37uIcP%yttS7kfln=DJ_U}C&!tD%uanvO;#7|q6a1?;-ge2VE!W} zJoo~5AUqOW_m=;?v2=QHrvpwP^s6i*mR8UNbj97}?}%25rN6&(#{=h-*0h3dN%t17a55uY_Q*aSU`$ zY`LJ)m}D*rd%Mwqys_WnaRQC=dK^7KHZ4$SlrZV3l=}kK|G0F@XF-lUPlM1Sfn6EO z)ai#tAi+ApGS1a>yxNrnMYD^86l|ThD_0U}xoLTCJ#)Cy_s830z2=QY-F@qB==~-^ z;OTgUx)&!@(rMb~lY5$<_fsHPH|PbzK${rtlAtI8SGOg6oE#yY8R-Y9xm zxKVW^(}feOtwn&Zj;DcNz`cnMxo7Nb>>#OdiV)5lz}FM};Ab%$H)tU?Y`N1V`q7+PJQbfTiTEveBY3UYbheFhOUB^>rl0GTmSpy-_v0y9N|Ym6$dD%m8} zYwf%5OiwtO2Yg~RO5$)93s;UJ&AaO{WO?LFnU`m)^4N>$?E9TeV9&BDIXWB;cQ^rl z&s<6Uxl=(#a*JAH01rcIVVsF3 z<>!85>Pv7&9ce6y^&_N|x2{^#G9<$>A6nlbXwi>>yxS?7US);^e&4Ih0g=B~1+MGn z#tJ+RHeFIPpp4SOrL?IN3BSQ1I#bEb(?W-+AreEWVEShO|67Jq?vKd+F2cAGOXsf< zYeUnK<6k3|+{A(?Mvd`Gn6`I!nj7OoeN_WiOmWdqXTK4)()3#rC2+?2oqa8dVHdtV z-5X06W0J;lT|D9J9*i1DDIR?2SK^h(%faC|Z)Ls+WVwm}#;z0PqO4wR!h2qC6AUK$ zCcar&G){VjJmpD{9}UKky8n)623w7bKq?Z- zlcGI|OGx&cimovVquLr zW1#nL3NOazmWL&u2ad>Kf&yo)7Mu97vAkF8367gu;}J440g;O|<)f)MdTy8N13d?a z{mlf2vnJPepBqk>6kcUSLiaN=!p)k#mAp*8S$?wX$b%-iek>&kOO4RWt5o5(Z=$)6 zB-L1-D#XY?x9{`y#QG%sq}h7~FV$54=oDw!{Ae^}RoGSQ5Ld7j>{|#BPD660E*E%d z!uCQEcO&Z~-_C8Uq^?rammHz@x{VBaJ9o#WOED-{BMV&5=?m51`Ntg9Df(rKM`eT*J@! zKd49uYtUGbyx#zvERQD9IU`K-=vQ9cd5e$2lglxr}GLQ7Y@e973DZcP4F-Aw)-Ba4CpoQ}*+MSFzZxA(41F>*~% z0NkG9$E`u&_)XOH-6D$Hh{~AQO+kZzQtC$9cCeKDXOolda#s|g&i(0d1hacC-F1~! zhfM@2{EWzq2l7OQh*E7-Blh=(Dh#AL5pMUm{6;WZO@=xXO&}_cOIUeiCHuoGELRGs z_cb5*UN3uQhU{lz9xfdf2G4SUKv0>B{2NiSDPAcW&+QCOZCsk(a*M@vP|MSq44u!v z`({$EMlMAtbX||Y_>Afv7c*E;!~5T3w*K3C{C__9pPrjo;qu|H$0PUfu72Z42lP_{ zkT4t4Z(}f;5_B1l+sMJW21uCH=QNcKJvD-aOaRQcVTl$-&w7s}_(w9Y?CP-!nmb1E zuDw{)qpzGrQX;`8qI6nAlTWo1r!E+`1q@kL3j{KhriBda08N*3-Sp145&?t+|AuPt z|2$rFcmjA-|48o^ysO(VKaIhG2u9l3(-D+~pd}^mHJKn+0LB+*f?!1Y0rP@&uF{o4 z-`quBfrlv$s2Jcf>U;0n`l;Tm>q}2Ti`iCdDccTd9=9wzecH;2LhaZc%dzH~F=@^R zT*l|LQ@~2uTjvQiUn}P-WD4C{vJP@*8buq7@1MwcEmn&A+vvPKb~P%oi9L@LZu1>W zzm@ux?a@iYoia_^HNF+IJ!zLYF2kgP#4j(HaV7|t4q9I7|2h&{-0$!vz~cX$LFj6FmqtcmRgMi|I5t5 zpwYuW?{71QG^3sy|1@(@&hWk6{|_?kohzMAUm`4Ru>1v4C=1`V@{Z;>y!-LO%m^r*!GIdB`67S?P)xtmdaXp-n zHWHyu@#{wlh=6$4K^ruTM+gK7wXLgBaOb2(Ul{|Okf2|J=|)$cqg<4924E*3b>iZt z7CU+8yTlIW)1nxnZU?Sp^2SA;NYZX-Sqg(w&W5H)2r@MRN?E=h&p+(v6eS!m>XacK z&9s$aZ;nKyD`bu3fkf(yBgj?1IhbmBlh9!E7*E!&m!g#s!-3nC?00bD2lp|1E zc6rq`_%vc%zcRNoDS8LMVzmw@l?FCxQ3;$XVe&X#pa@V+cd-TuPY%~04p5`HpEJ80 z)`1o{M(apkh}%|>t;ZGPcMcfj&5*njeu>D)Gf5Fc$pqIDw2pZlqFZ0qIt)JlVE(c` zf_JoTA4n(*Yb2f~cV9({86H=N1I%F%4a#EKU< z_o$N}9y$aJB}t(ZTTd?rNafE>34x>Npr)P}+17RfX$QQ$xajzp`8=^SvU#Lb_ysg1w(6%Vj_R2 z$V5Di&+)Z-nDaq6k*r?{ne6|d=*$CRTK_+Omf83AX`l8*%akzfv!sT?lq7^{k?fPT zNX{%Zqs>T2k}09wFx(L0&NNX-CTrF^$r3kADaP{EuiyXYkLR4{JkRHx_viI~KkY8J z*(y?@NM}CVz_BboSdnPSK{0W#RjPnk*rK!9B?PD)Y7|yrkPNozs96S5K|gGUV*~ab zU1WY%I%W<|XBo?$kj?DLu)d<7>C>r!3oE%!3p%70cJA_)m>Gl>I|~M(aAOQ{ce=vzAsd(M zy)yVsJvoZW0ICGo=L*xYJZFIlhITQs_9ko(B+}Ujf z29T1XR_=YLLp}}_2fh=auxr5sk8*Smw&qssOnr@7PI8|5Sy^P!CPejqn(<$z&Gi8bVoEOH~xIf-o8Dng<1@@=|06U+$c6l^UAd;OxB4 zf9lUg_cN+EyDl6lw)58R**?~QyY3hp^)OfNvzbllVq%9cUXr_nJaOiK!w#SCDw|#) zL_aM*zYM3rO$i={otrr1waNtb$1?}+mAwl&a!c+?zvbdC$h5f#yeSyVoUmdINkZRf z$=(SnphFoK?JzKtY0V=qXIAbiR2M~R(y4hvJbE!xGDX96`k6Wtw^k)aKLiM~+FWKV z)4(XyG3WpBxt7Cy)Q~jpg_dg#BwRN&r!^he$ZVXZVdAzA!*tRl@!UGFXQO30!HlV~ zdL=Ag`XaM=n~EJW${{B(Aj-}>p2I^!k=v{v&(`>it zY1_EgL~zneLPis*qL#t@NWV4a#VgB0`Qne^Dh{3xQr9I6+P>}XiuBXcqUqZlUkc^X z#&adiJhOs|WS({QxX1Yax=?d*nCQ`wiuFo(&7vX1xz}aS`R1{^C`OQ-;QC^#gN(`_ zny#*Q1ADd!xp>PqRP>vA%DRVxZ;Sgir|#{oSj*tq-_w1(sTS)uX2F|B=rajTh2!te zzD0Qf60e)N5j*=E2-8IxkFpt4|I`nPv`a7((N4bt&fIbwr(BQOu)%=Iqn|ITm_p+y2&34$+XqX=U7 z5E@&^!0!>_l1)Tp{hm|QWI`B1GC^fxRilg*@W9o z!|oiSMX^eS>9D(ix#kTxO@o@y!|rO3v=6+s5p>d^)>UR}I{c_y9}B~jE8Q?h5ARB1 zVg&Fyl-CqCWGw>qEL23bnT0-J@lC&V9pLC_Sw{zG&-9lcFI|-aPelMJO?;h!?(BxA z>fJO={t+6up6|0NB=DaO*aL!BJ)ZIpv`5MiaQ1zihHJ1<7K0Q?TrXjSZaZ$~Q z{Fd-#0l;nqcmFXkU^J9PNU<-_ey4`2UrSYun;5n9`6YqQYR z!b$5sCD+weTYG(=);!TAvc7ghq6dR>Bs=}ccy4Wfv)RjhbNvsqfr;JrgR|V01RoK+ zwa$$@NFO@wm0@bm_&+twSg8K*^{WA3q;i>*_J@FqRMRS%DW zz)?L;#U>sWV#An6Z90x5oTqsi;V>1v!3cziAOduPlwS8D6h#%G*8{k(yW!PWT!dF# zgGb=40AY<0h-vWfUTx-O&gfs{66#axdER5{M3S5Ir%O1~<-U(+@nVZq$TRl|xLHk< zDbY!S%A8oJT!$43*GFFeZa@Z^U`9EWw2Wa8*CI% zj~PH}{a?RkFs5rDwFaNALB*@$ok5Q|qX+ihp7!8l-Z@_jG#B<3;eX$RqeOpg5A&RN z!9|dvO8U{%oPNAqh21X19-d5Y`ziOTq^&;XapV}b#dy-$cw$vE%___SA9RLggyv}o z+nJa^5!8Ll1!bnrd#27@jV(8#kdG%md^pk{cIL@qRTci=)$OM**qJ{IZDxd@aoc!) zFiL-(3Q?h71LW0$u-=bm`coe4;K~KW)`6PS3m%>R*Uodrn%1|A zkGpFx1(64e0Do7sjCfw8A9 zEJGU-ev}HpfF6>Ia8}ATfZ;dcGI?=Za%ffcucLteB)~vT#^C+BY$mw{R=Kt{ZbHQg zLfl0zu>e|P&hVxE?JI;2X25}huz0oSno%f@iJq^&U>h_uR*140g`zYqcIJQEK^wB2fELKQc(*ZJtSCiT3K-a6{3{=mKdb$?$MZiMM z-;#!FAom(m5Ezbt4zz2&8gQ3)yJREkWU^fJI~{$>=1dF|$5U#1GYfhMO3P=O*XX4LFr({%e`*f9b9&z*ms z5#xT}K_wdix*Fw?tPQ03Km*q#_8NgfzFG`qwgBVRK7b-q%@{LMD)p#%HBcjp z{3n8tDuibIXGT%uzN(1-2q`83Wj7m*&%FBtrap=(D%4T#Dltdip}IAcS^$)&DWiId z385Yvr)*H8cno+!=e;i)?5f|+jz)rkP5lZ`HjRU%Q)VF|biZozu_EflV*J(`@;ed6 zRZqhx3F8RCUW9qdB>w|YOd85LHoC_gb{1heCe)NqM#@bUCSIwn^q`!2LT+NCog83$ zLykY4`jmlRV9?@Kgx4bC5xrh~4C7*CH-D!bQ-TziZTkW0btUQgTJkD3I-CLB(^GPe z^!=d`Q`s<&W_~dbqcuF>-^Hh@QEm*}YbNn$Be?wMVUQmSN#y@gn%H-Dd1KoF z%2zh^t%$fxpm}aLyPNhnSAQei5ZcFF%F4tM@rwN_@)(;sEF|SJ;SE(_nH!}qf)`=9 zdEDiaIt}bk4lNhqzWM+`+i?v5?u#7`VyndfZs+0?Vl}2`^pYGQZaRfM_xm!B0azK& zYzJ`bHG~ER;Pn#HOzgyk>7hMF6mbObS5MCB$(_R(fYBC)yjrh(sc64KlfWVRliT&L z+S-pf3m~_tcuTp? zB=$3@M-1p?g1?j{N4(zt=R$biNnm{1D&(uC;g0}VQv zf%Z_6zKckwgrw^y=lwH;>Qhr6iv|r0(&pn3o=teIT6|rFzY36Y*>AF)NP9g4p54Y( zqsY}7+-n0R=rb%~s!(9^yGhxgbpV44GlX@ z1QAsPMuj8%SQ#E z9lLFw;f%kktq=z&Ti}UBU>HIS6Vf0fUWJU-O~kiFG2lZxaJFaLHvB;y1zr^{0rf8- zClT6p;;28;ZTaglO9;vJxZ!JXR)JagBz4cA^a9WL8g$vR_iBK8MF7v&qkBcvN=?hF zc=9LBOuhl;>QSx?+&d+yK!6dvA`9!{MSq!jub*Et2&j$OQ4DA^gYsB|^&nxN2`4A8 zY_I%L&jV7X2A&VZZ8~^;CV-x!^xf+VJLdql49uADi%a8`#`%I%S-Ea2{Bu zr(R?H@+`qD`h^8XpxOJJCbs_ORSO2VMbqcD^uu5JOFg3tlMe+KNmZNFpR3Lp;%dA6 z5*uGGd7EB*AZN(ot_IACxA2={@OJBpBZ%YwTxlMG+!y?_Y|a4@Gt;AIkIPx(4Z^0^ zol`gM@&1E*(23jQukBfJTXOtPOI}SC5@aSFSbTBa%j-q<3qPk_0iwi^L5Gril~W=| zgeMb;0E7bcoA`39Gkv!E`Vqjh!or{8cuGiT7tPt~6w!p-nOj8S%{6F7sN+&E`EW$O zScfjN37Zgo@LAi2_Ku|0Az@=3GK{U9y&z94lH+F_4T+?WZtbF=3CK%}{TWy?JxElL zYEho%;FILd?6@=~-j+l^Gw^qEaVNnhfHb^%MssWlnpn7Q$xQrH%M#A%HeC0yqZu_u zP`h*c({%CD-o1^*#3ZK5dIz^zi$lFpWZUn!E^fp*Wb{`+N$>iyu34oZV6pTWFWWKZ zwg$vdSejUegc2hncd77J*1HZih%wMdfgWp5cmWo}d3{}#R_1NJr{GGHrz5|L#RiwZ z;}n6R7jxegS*}iHQ?}MLgQTg3`geGzs_FsULl%%>zn1nR1NAeF?O%-MuaZw3njR%c zm$hafS`?Jj=XKoa;@~XKO-p`*(|VaP9c$J~!`6i7X}D;sGMQ!ZC5N!|-mo>@uJayF zR}R)DKg-cUoY*VJ+*hTUr=!rTn;*iCUa1Ti-_k#`R&d?0>S#upnga%ZJ{PO7;rFwp z=m>;O$*sPeS?r=*6=z9JGNj`laLwP-?UOWuy?KgR14OGd)fAx^>)9r}G~9s>brc(k z2od!>%OXt#qAk-lHw_fw6l!?tkcj?TYCXLa);4np-s=RpbxBo9YOL+LoIqRqJ0>p-#j`D@cIOKY#%fCTP{pIm zn3X)O({{uhgEsejC!f+(e`1dv>woX;<4ObuVBzOnv}9)Qt(7BJf8@sEeP%Zm9nHTI zlx;~(ey$8RsNB9bUre<`pdDqpCE+HZ zS&@tN6mS-_l=S`82%(nceX+l(h#`Ngnv&XDKS8pi&GP@OLhTdj%$!78u-LVPm<8a@ z>TiY(Kc;L-m@@yOK@23S_T;u3&=y8GxF`M6&H6RCsj0G16Nj?q1(!6HHK~dAwOug_ za_$yL{sFR?0bBb@m!p6w(-T3nYGHO^K7^w5;n=N0bAMcn!%@uQxiDg1muo_+_)3okt z{}j@kf9JC$0IgBN7Cy>3JFi^CZb*ZPnVSIncO#_M3oF;9Aszc(O_yYK@~ltOi#)yS zdqVozE}l#=`NX$NsPPUgdE(SN>RdzFCX?%-8iA)*%~Kf5&{+IXrx3~nM;-fBsDs8d z>vp57_y3MXCSUG@S23iKO&y!ZOgHUhmL4+p{F+NklJ;#E9NpE=fIPgh(^Azqbdfke zk?-VOy$wl?Ktolmu4$~1yDKudD2_&J^;=z<^P-%-!W+i+Sd~RranMuP{GAy}AgNYo zJ=wkgc5@LUa9>1bWPP5YCVtSvzz$2jg6M<~lx8J5i~dC+Hp zlWn!uvb!HM!L~?*oi|^+Nm}?&fZhids(el!zH*x#0ehp^Z^8gg;0R$Gr0<)Lc zkvv636$^l{q(j>7VF1C>Ph6l1w3yfva>8)#o|3f2HD`|p5T9e)Re^E@ zSY7e}cYNy`8qUj7NG~uVFj`%f?Oj9o8Y-vX7a_a>Jlm zGN7ATgUFmrfJ;cf*6NC&Xw~&1(UZ-B0Y66BCZU8dCx>fQh@hbF8elUsE`Hc$H%;#~ zbIR((Ayq4EcjU8pA}V@Qs?KEPXM@+K`vl{lOK!aC&*pd3sf ztyWDeFhQhgshwdm&R%A>ih#lg=Nyk*r!O91T?y@^*Be0Y6_=^kKYgNXSA(`gpk>SW z06rT47S%q#bQ%p%Vi-V5+to{tuKBN7odN=lJt&JNURFYWY9o$IdN0fBG9Q38H^A?frcPF<{=x?(I4lNCq(_)SdU|hw3|Jdk?ArH z-Z~XQDQU$%qOOIy{+sjW#ms47*JEWwDb_calF>Q~gP14Tv%#_+gA>L?R}V&=|Y>e5&}=qQp-3vP6yft^ET(;?YBRuRF3II%!j zFMhCEJS|URd{(B&m0ANbClsohhP-6SJV~g?Y804Sj>R4KOoKsX2^Nq=5oFfNqIpe# zg;MPL8#UoL#3`2Aow&6(Kt^8J+(r^fg#Fkx-ssuJqHO-8l7w)ov0K`T5=}*0O&ITL z$k*tx0r0d}T;63s$U>X-Iq2DwYmL&XaaR75w>8Xx}PvYA8osQ^AEeF&8xK#SVs zZ2Dm{lbl4GS%3KNk;TWi3$TfN6qgRI{0Q2qkaPq)*`b(Dhdd2cYrC=Aj72l~m|aM5 zu(t$9m*p|B8}7@NcVm*P#U6lJMz@ULU$g~~?@2u}wHce8>X}tt6sm+K=;~{%JJ)uG z!Bd5Bsz5nSBMqqrErqCEP4aA(U#=b-r;;${o3Cn;FHxfSO^_MC+_4Se(B%2mvQKxe zT`)!2vbtq2(0O_c_1WGPe9I;MXi>L(so<{_M(j34Q3}1dKu|?ghU6O2tI9BTVeBed zaU!E=ogN#blDP5F`Rd|C6{`FGZBh%A&Mr>Plg-v(f)k-Y1rS?}6&X*=r4_F=$n2^i z>jLeKtb`)fjKvys_iq&2An`;%JEqtfK&3EkQvlSI$+d4LCMb)JYK!LKRF2KayrG1U zo*-M3*c!m>)}m81#~kd%_*CgU1wCz2t2fPKYZ z*i0bHQ6J71VkdH#GAdo-uPAmrBG0QXo`E|L?FBh}Os=4IGrNc>l+eAAMM`-p4lFVu z0fwRi{1tft8GfA_Yr(b{@3RVn7P=UeZ@W-w*8 zDkx=LPr>o&Hr0o$jZdr%Gt3k!I#Ybt^rR;bk+REmtp28acYPDGYg*X{1vp_#Llol+ zWp~ff)61pPz=*5;Qh$;IU3`z#uQ+|?gAClY69N^C4?}Y)ZO~K(ip!LRY9wy`d!73s zE)B)wOC7ExQV=)-f!x?+nKzBx2C@33HRW)S3i1?*U$__TR2I1c(t}%wSRu$W!E}a~ zH6jaFiWvg%L=k-ShIEDiF7Jo@T~?NxPae%clbydIe)&QCZ?k+g4R-QY_hNAbl2WK$s&>@s@a`LIwZB z{v1O5^PWAwTkoXywH;c-RXmGi!M+A?UlS(2Y3Y+`kSDwK*Z3lyKpLQgrT;B_l)c|o)h{Daj%@VsjMyR6w7P;clzY!7*v@*>sDsS+9H*hCL@mVPzeE^V| z;?I+Xj{&;$A|w+s@x$l1nc_8?2Ab&+v$j*am>|*gdcCZaA0(!-GmTeXI1CKV_=Ct4 zd$&G98kZ{gKVDD$10>B};-x6g70K{IK^yZ8`sE;1f6Cv95)zyF*@TUv1U|y8Ff$?R z*FGWX5t2%5lRk*=N7gXq;YJC)-_v<{k`vUScb`aaN!~Y#Xe(pCy>Snkb^Lz1 z5n55ie;ak?HLhQ>v8{MU6ZmtELaJF|Bm~C18qAH&%nGQFHeI9A#BO3R>T_n)^?RR& zGADepGs4#n?V1jTq?Es!b@scCRq39#_4QD6XjH6tinnu4xpi;^U&Mb#nbh!#}}+Bu3jC=lnKK=y019; zPzAd7OCSFzCT)J__ttzpQ+6=?!||vOP1pZxiM`*L{gHe5W8>V9pY(rE_(W7)JW}{d zjPVA!L$DtcvfD~LHy0NZpj0iM-0G(|Ayp59Xnk8(b1x3{KVJRKY@Lk#=3vUI69FGy z)?J*a+q(bG0-WK5T`O_@nT*mqk3PjXtuLmnA9(jkq7_dqT;Db{*S1Mk_q#4iaq)6@ z4prnCXudz~2G)5?`c<)D{1Ru4UXYm=}fX#f+WM?Sp!@~4oK z6%+doV;uBc-$OAL0iyTQMd)bb>-D0ZZyT;wh%PFg`m0cL4YDZQE6hG)?=y;5sw{ya z^I$wZlao2%gX9GH8^=!_j@*o?Y(ZM?)T zr)ok!WPh=V8MPigTo;wO(R!5r13}Z@xJEMa_l#u&9`)~Zy7VbWyXEWTKH`R z^=tIXZ!6{B61RPeblwCVrHt2<@BQX_dVSBA$37t&n))j4g|6>evu&#A`^NR(M=e$! z)XiSi_b-0OpZ#`$9lLhk=K#rfo3U@3Hk5{*bl$cyVbjrX3~HX= z%J0=2(}e4WJpRFL+3w%BMy|Zq@qMHG(7jLM-SZS*=6>7|nD^K1IS!l62miQkIy+#q z%Fa~E!e*@LCS5ul8sy0k&x4I$V{`)K2_{IBnjY4Lxv!C z;8)_qu`jCTQlyJULp4km~D~|j7{wDWJ)(H#WT`CG@fg7EF-p43* zLF;gxVqFnYOt1;I%*&A2ivGmO}}~| zj^x;a19|9rZaK!xuHdphw#Pi>lpy_l#*G_go=bh#Uf$QJX`DzY^9DCpD*t(>SMB!q|h-P}JlRaqjpI(pVJYP+7Mi(eKQGwIMoJvS|XvnL{GdB}joGJ55z zlDtJD--EKdymOgjbFhz@tL~?UJ|#+rcbm=4K6Ixmu%F+pda^}~FZ$~=Ifn92*2uDuA?Hn*r9lgxQphYuT=*|wUy+S(SquYfzt*fg z)M(Jno3f(JXfNKn;>5!hd-30?cw#N)uJfb-wHI;RX?cIq%cY(v^IKP7tjnYD)A>_7 zjpsT!!BNLwrLuPeGN0}t*J8`v=h~{0;}cIPlamwKx5NI^@4J_>)L%A;Ot@99cr2ar zXy%L9HJ_Lg#svmEOS(dmzi=6A_>ql##V5AZ`2t%SXTf9PT{G|P{!yoN-J-~j-@lZp zVEvv9`w2bmEw&*q)NHH>FL2P-#I3w;{hadmmN#5Xc8qjhz-+!5uP%P~A~&AbZ(0xY zd|FazNL$1?kQCBBHVGL0?x03}*YNg4|0~lFgeaaY_kBzP{)V=FBQVjy^KY= z#2rsXo#}gL{dbVenM|0$dsXYv!K3|B1uoJr7q#gAeKmZ+vr{-}xo zY)Nd#`F5*FzAeT2nR(?Z4tS(Rx5s}4s+op$*9%TlotM6`xjONFbjpi3tcuecBSe9f zWc=BS%w>h^+HCGcIV=bu{dM|VM$LWm_L$qt_7{wv^xb8uY)$zgrPd}VxEv<>FMK!@ zAJ?qXTHi9x?{%2julizMIO{*%<)~KoPs_eQ{xc}%!}ky&vSda@mW%8D^a_6CcYA$e2Rz}30Hrg;5o&S8pLB%N zBz1nO>9qF-$vI8nVqb=qS|~ufhk#3_h}bA(uWG~b_rdFStE_7DGDcH8#;jJTn#+b< zYF+5xHpW<;(#t%?N>M>ooJnblXY160b!QGxTiDv-PntkaKP}b$W|>XifGko3Qsye? zR&uX-w+9t>~zmDUb&_yiP>u zF_x~MT)o~LdvKk8GidH<7k6)vCLExCmAQ~o4K+(nF=W1g4=a65DXB+zaib9=M65kb z_`}y;ev~MSp>e6kZ&C^l#G6;ux5fbSi5${rO2p8uI0mkR@J*N-cv<0enaSmxHptG9 zG9Ik;fEU!lrD@d$^Ckw36r9$@7Xv_Hw>;tv zXU|R(yy$wjq@F%%hR&G~JHF|@8FnSNbj=&7y+V)RXAAJ_(wZDD<>*LFG|+1}W6=YB zXX-%(D!qHqse(0`f2^fu7gS&{Mj1=(9c+^}X{j4RE&rjdSoC{<=-WNT?e@6``31*p ztdXZ!HiNv2=|;ZP31Tqe#I3`Y;nkBsrXC>|rtz#sy5o+Q2yDC_LJr|YabbeKVo4qu8wy?XMepu|~| zgNZbXNihZWop*pKe}8jnUgBL3F5lmEXk4tg^N9_XvA+7(1nrrmSS@z|UDHo!pDoPN zIZw8&uhLYr@{^B|lK{ALt^f)}K~zc#$EEA_!9JP~#;v~;@2QlpP`}1cnKSXP98-2heGY2QXy1@JT>#kL)>5};h5hwIxeBwDN$g$m$oV@HW1Xk$E+3RS-ASTR zWyaE*uCGxW+gukGEx6HB+%r9h$-yR_J1#wz2L%gd+An6*?JuPEXSeiFVl>51zd`s| zCLa~X{Oaob-D&D+v4h&>aXvllRdqE;`K`&_?icyj&aHLMwJ&lDL!{K%Lx5j#-Gaj8 zL5iCpgV)NSt(JL^Q3 zx(?sKlGEy~XB~|@@jmFMIUjbyZ1Btfct&P!gj$@Aw){IyDHAgO8a9dKZc*y&;xPk? z4PXac0&)x3nUtv}F_V9N*&*v96M8Ro@?A4!`ersb^E0|EyYCT z-Qd(}cOmGZ&_#)KHhG+D>u5>MN>Df}iYc|zmr71^oA*Ldq+VYQ$BPbo<{)ilV&cm? zIV6xwz7s7>W0`pF!`$e8sk2cMZK=bUz|bmt&zS1ye%O}{*eRsZ?oYkf^2V4_98Uc8 zgD!Jsiv2}!?Qm^2SxjuvK%@?MG0!1c>lZUGh{?8NIsY61Y=j;DS%85Yk70I%4(ohP zfJG*0J$^JPA|E zaPOE*ws(*LZV?m0shyyWhC4RK#cf8{(9N*|#Py{vUkF;&0#G9qx&U^n=5A5Ju04PS z?O%LT1-|O;(;l%++Z_zRxi%&ZY}W=vq@8Q-J3!}oqj-{LshdpWA#x4#mINrIxcg3& zyqXAAwWUEr(*rn?RFd0a+4(X`#iR4Jcafs-b5HSf#DNb-3t;yIv5&hVs1c#FmPgZJ zs~1q$IM==wA?3`Sn%^5Yra`wiMzeKv1(_LoZQoz-k(KQ~`aCEBF!w;Hn(y?URxc?0<9G)x{fSqzaHjL{|gMFD39QYx3dyv$v zy~8R}=j_dKiZHNP5|_;`GguO=w-xsHzQ}&)ilf%NGoF;DUDYpjV`_sx10YkPn>EkE z2zZWZr;WlMZ#p8Xc`N5y+hl?CN!S=AWbwJyRh;udwb25eeHEC5swZi*P73YnCM$A` zHkhQd)@X=8X+`Qg;irz4{axX$9Z)Uc*s6;JcsL{Q=aVk{x7gO)%C7hhUZ_E@mb!Rz zpqLK#Zyh#0E3&e+|Gcmn-mKkls+gJ_1K7Tf>gIU8fWxZAu0gsZKXehTTyg^9{6ZH+ zhf#jqOj{``S?t4hnA#8c#Lm0>GA&B9pg^6`O`qt*B_L6!biR{3OE)KEm^V!zUZsi+ z8k+?3LCd^{sl#lHQbIo?xzJf=E#O79>HM3t-`HBS)Im}G95WUtgnhz}4`TeFU;)fR z;QTh7V*)#mc6jv|V9uaW6({!1W)t|$(aE}V2|>u${bmStHBM*%!D&#HVV7yHA}P3PraQ~C=1&ziRh6|VRq;A&&4Z_On<>K%VA&Zgk2jot4DbOFF5w? z%a%^E@M{75?+3$65$cfVu;~QO6|(fpq*}f|Ah5P_@TcZzr|WfYRUKhDu)~{<#k2QY z8lQN)k%lQG=6UZaKfOMc@$B=&6W3(K-+%*6LVwYJu)89}L{(P59gPnk5Dp`)6f3@-vGYEF2?>z+qCpDTy=UI8js z_u-ocR}J%`HSkzp@1)K~f1?d$5F^ymAR|ak5NE31vR=Z6uJ>SsngCVJ)*lOC^pniR zQkw#hs5~0h16o=>Dyn_zfm!X5l@j*aAG#w+F1xEN0{}$vI?Rrxx+_Q& zZvcnz=KkTBHF|hGlb9ulCv0z7D;CYDdQ4Cvuo~>w;7MZA8;)e`Q-t50N3~s7hvc!!8*w23x^V*f*U71CfEU&% zwyJ7yGqAHR=uj1XsJxEQZk}~H+X!iy?)>O6Cdr9sZ`7m}O5F-L+a1tmyHL8yeY)A= zk2K(QL#|ob;Tc9=5Lr2w(!!;f=19>n_p8_BVq4nS$ABXdr# zYDPE@_tA!d(crD|TS7M}Mz*S=qC zYiE@-4H@V?fO(}ee=iMUgKru#S0x7EvpU}v4!zqt5#W+h8(HP;HUx*|XiI9&M7P17 z-da!zPMc&slEq#|-LOAE`Tai1Z!altbu{UNRiZW7bjHV+W?KtTaDkoUx@YD4r!{e` z1%O?MF88f2vOwp+1Rq+td1ZeY$~)jW^z6{196IXB+C@Cu0uZPA;$Q^lJmyVF(^AuP zKeT6m-#;7s7ds9E(|5H-J4i=&zXw7l6zbV*3yFO4H0Q8HA*RFfJ%y;n|B1Y~}CW&UJsSi_03Bc4_()Xqnap&Ep zpFI){Ncq^cQ3deH(<1}`BPd|&GQZxf?6qJNQ#_G`^YTT{%+QAt-ui zd`2C6>uny3pKWWp5wHh%E9-43voss#IE%C^Cg90YxoNogn0gVvi=L(-^=R70dF8V; zj8O4U+RGnN)3 zBA0~@t##8)yfB4$a=3q8)M9=k&~u*ZCpafq=h%ag6$q{eq1N7HwR8~MLTfi^v*y(; zZoU*{o@MKB`gG1m=XL-kijS^+9uvD{h3W!&s&URCZK$3%&60D`hZimk8-FXE-uQ0d zlvDBlvc1^|smk@!ICAoWE~Q696HIoR4>wRNmA^v03MY=3+q1 zuOmR$O`T63N3l@sre%NqUyG&1E7X?HjtCRnykeNrG#LFz`gl9ogtexv<%KKW+qkp;+?BeihvC`5 z9@Gktqh*Aw^Ztzh36T-H5wgiobR98Ej>&yo|DMm8(L6d`SpI-}Iw0nP-wyHNPtZYw zigIc$wi|S65nHws&i*6Ar-3dS@#~*xj>Z!x+W0X35GAe}=RVwD92@wo)=3AXQ$?Tl2e&19>^9a?bo zfBEyS7ExUjEM0Ap0J}UW>c6kY{%Bk+mDAV~+u@y&o1unH4dLy_`p02r`(#NQj52W@ z5_liS10X-iz6CmGwgxKDKupMMI_&fip+-PKiVk$L)^&3S)snsIP_2Jc&|iO_T-$eG zooy$E#qo-f;7A(kDI zS-0)uKsE)wsEBnc_?T{SG(UD$IyAN67S=iNeXf@!x%lTm<-ynK@*_*mdvBEQveZjz zcfM(gao%DNGP834>l7INnuljpu0H7$|NfA- z*y`s0uo%LSYTle31^7XQyZTnw7;y~{t`k~?p#4$iba{Jh7@`BH#Mj@z0U6cNx;@sqqPwtiE$JL?1ZQN5c2S>0+E05Dp@f{L?jDrQ8XI9oNyUhS87fpBH z*Co~%Rnfa9^%~Lut_8%}#a2IbS`sjkGuo8?ItcsM%ty8>Edw2dDChhrhYqG$Yk#p5 zKV(+!%)**OZl&}O%#%l!ofm0~=FDS>DcgVBo-7YcQ9-?nK4BN8CT*;31XI?!(d^Y) z>6uok(^?JwtR53(((cJ;!{$koZ`N$u?i`^y&dUanzK%Pos z8i`U1>V|k$PJ~!jfO|+M zq!#H2mnyW@j#iy>wC(Kj&zqFtOapeab@FM90shxy$UeX_cE+f-)h`C2JQdVTdo^=f zcL4)`fstOCq!ClRJ8Z|g8Idn?OFhSg9Ht!zR7;i!&{q+Byn; zrYr7ym)ow;a7f7-aGuFa`qaR)b}+~m0sE8{)d;4+(3We|vJMZ{_Be>}!o{$e9h1{M z@p><3%b07*e9_B|l~Rz=^g8&rrfWuVEM%+V1pV%go59th-SQAK@|0M_;XNfjkDVPP zniaiv0IYUAeu~wZKBa9N{`iFk^6NDey8!9#xq8?kn~8~T8Tmhw?mI52_Wc9+IUG2E zY$qTpxH4Bb)3gM)Wrd@(v;s9V%fhs>932o5H4SY%R#srkHa2a8n%PFPvW>QEW7D2` z;>Y*(`;UM43(kF?`@XKv`;vLb>%gGha+l*8=AXAS7Z2q{F;F4eb>@K4V6lUQZ`p6kt`36GR_F@#?H zLkA2NJyjnq1t^FS_@E;nS=K1jNXXqoB+U9Kmc?LoAd!Q!Pxo1NNZjJkCOmg!Iz-D1 zlXC`n7-K+J53g?)!T{>fC9v*-c%v z1%u}E%5Rv{(d}c2Fi5k7&&QY?T%d7p;TT{ZB^990~$0_uf1vm`jHY1H{2;hA=`EomoFz&hk8o}ZU!A)HoY^{ zp7`p*(R&3{dE_g1lU*zZIMH5KZ9vbe=4UR4q?;p*Z2BKnukK0_y-o0BVygNE+Ixk~ zhm5M%4QhN~FVOmB)WWSqa$;P&(}@k|W$(BB>vXNge`=y$f(;Rz@YxBFrckZz$B^)- zBpo_hh@#!p!f}R=Yv+kyGj0MiqUPvu?rdY#1aSK}jt<6oOYOXeaDB6MTiq_9-PhNl zU8xdMtXNugOb7+wIxVGwFN&^f@Vi+$bE*hp5=F3+26T5?h9W6c=CnsAZPMT1P1_8R z<-|_fjDuVnu?&9q_bS;PJy=MT!@DEdA4fkHZ;o%{xEaS(jm-Z-KMa0@;D= zep3Zy;=5}Fn(yuxZ=tEX&e7Hz=CI=bgT}2prz`}%lm&p>y-LP#`))(-JVsL*^ZM2Z zqvYVB$D>xwT3R$x{DnKwrlJi+`qV{P#C9gQwaMIf3Q>_C`jVD~CFrYtQQClS!;zG7 zLCJQoFZ~52TqRZcZ0J`kF<_k2rIf_&g%vLh`&bb*m*bSbYEp(=?FY33K@G)q>lUDg z5B&i`-~TQvk;T1GR|)Z?^zD_X2bdhc*bpPLzmSf5p!6D>pjx^VcdsF;-{v>TTgG_ z$zM*`SH*?f`3el2BZhb1I4N(%jyv-7$&n{5XsPA^_TwV# z8gJN}3V(P5n{-n*`Gy|k!WCRXS{KII1y@fEeR2dl{?3z3!_zD|93mtbc|<9YD;B^G z(H0RrvPS2$PuIBYHm*?Yags_*l72Z&owmy0r&m7RM8L8rZW{gbR2~WILA^*Wm|?NE z_SzKO8gw4WJCKks+0S%YmcR{Zs|@G&~6M){7TewXwsJ^iU&MoZDC4W{u6D#e(0dI9(&72JKqkH{fxM2CZO*PIC>DTk5CwvVDV5=M zeE_|}e&QnMs`W(h3)8I$d$FByBiYTdX@cnr&4+T-j+4iXSmKbT{W(T*tSn^RT49+X zV0T%1yA}Bt`7!HWI*tzr2r3HL&`!O21y%?tW~-(9s(HKi1AIm;?E@oMHu;YFv+wi=xCKT9 z6-R}p`lks|7D9k61mdkx;lOzlys0S50QnmrcPn1XN#0Nan3>8;lETVX8^v_Lu#<5l zKV13AD13Y5F>(C+fcVD1gw5Y3`e}*EA;wOSaac5!qkeq5$tlIzA)+q4Y`oQNo<%d_ zey5+G&h;+=J z0qMJ-@!g({)7G3yD?i0gP@xR~S*Uhs)>$?X3xe68 ztroIW0c;g)n(Oz$7MM%hgw?!-EVKX&I++3gNC2fciVg7sEqQ2P0Hs<93k^{7cia{p zCQu040`sd~KkT$Yxgzy{`5AUd)KUq^22i=|`v+G7C44k=$X@9J;(TO)i$I$|b*%cDtD3SFAm8NB_dEb@0`{#x3Ca*=_mHinXxvp{W;3{5+dlM4Nxzh|(8lormAb5~?JgF3bPiNL%2l=2j|k3S+r1pJrL%!=LD2DT zI9gTu8noHOCIs@RH9wg~o$V!Uc*ZxuX^^oe?ZXy27|%%yH<)XxpgYz-5P<1Jtjx19 zGv5{LYarg1FdiAo15}o#EoVvnn~8fs2i6dfu4TUCTSoHMT?J{I%=t@>lY)ar2ZOm$ z6A}z|_lN8bFTQUby7SeVoi-0c13Qj&hpgNH(n_?@Ngh*Su`z(-*sHUf%BLMP18aS- z2SR(zu|2LOlr)v>5IM5c#8e*DMQbhtDQ;-Dm{i|O)Q$iLJt>HEFDY4ZmMB+EJk|hj z+PXFL2P$9f5F*(dS4e-SQ}VRTo;^5g0KLupJ4b_Nq3yMfK9^7H7lO54T3-q+aiGNo zcG}xt2iqqdBCIT)Ftl^cjmo;VU8b#Ldk`$5vTW6{?t`rLI%>X_o2OEbg00g8(pBk< zn?n?n%78Bw?q0+wBFES_>B@O*`Uj4+FOrQ5ge!#2rJN$q3DdIH+EfErTZ8%K!CaIX zz_ID8m|%;Rsprr(@xUe(!rG3R5(h99Yuh6t{6F|$#SyMcLgNOC|R4L-Mf1D&#a zB7uk4eG}POK2Bu(4qYnQdpYU&9bK_k7_^G-7`Xk7Ku90ZDbo@A9?&DPw2gq?piiVu z;?!T35K{4O{wm$_(lea!PPac3p|*b}b1r4izAK)}l$FAN7%G}>WbLmk6M;u~He^4b z!Ue}1&F1544bUD9_R}M?`DO991p69o-ztiL5le$)%LxFS4?5*Yu=z;L1Ou+Ss@)+2 z?=OVel_#1)w=LmK4lsl^bBO&xHJ5eN9GQLdUfiRFZ5%#6M~E8vE~?@&UUSHMg!on# z*%~D86IwK^=^PEe^Zid?ngJ^hvRQx6@|hC4v7b@90sD8(Op8^NKoMn_jrY|#9@Y`8 z1CPE1obuL?j~XDl#re^H$@5j%tQLsNW_0UpseH1Ty2{&H^9o@OfHuS-BAR3QT8j>M zhrbwDwQYoM1Ju)w97RZ57_@GKZH$nxN9Q}JT!&&4nU^FKZv#3PbUZo4 zI4*HG$G2=K68ZqI%-CCUR@+m9;@hgMxeCdeETo1WPj~;4rkp)E%TXZ z#6d_ifUJEYX0K$;5`$kys`7-I)H~h%;pF$HDmr)J87-WtM?}mHF!^eSt)^sXDyGiG zfHoLx8br*)96L)6x(wL9N(Gv@0C|;;dEC4vA@^=(+g5OfUFaX;wdQ#YpPoW>7lr6l z6{u(18EfcMqA|*mt%@PWzJXgCFTK^xKUvQw=4nAHn_2-*EgvGcj%!<~rawsq)7iG` zbm}RE4I4^%dzC{rho7aKsTiw?IFxO+tAM!)o1)b$I1u1ZN7A3H1Opcp zN7(XxgtHsFMAN=O!5BCXX*#wdHtHLyt9ZQ(Wk zd#`Wy&Nx?Q!UycTxixUfqYE_w`)}_EFa0-@5#>U(H)R)ke5x+(^$2vXO* zoeGKd_-U*V+>a5?X1J%(GwYj5l3Z20ZjSo+Q_igS8K)>`Eni;Wobzm5=De3N*Jr)B zqmvQrr>qZYAHK5QKJ0$ogJto1Q{!gaGPb($buK?!pOl_0dT`C%ExRH7T;TjBb=0mO zW&Ph@JUqGN@um8(GoP-srDV9zvo6V1@we`rjc1N6et2Wt&n=TPbC$d+OWU7wDeU}@ zk5A5*n#h;jSMAuhE=vB<^5V#d+r#A!b*w4b-;cejzPusg^56ezuD!F|k6}5{th9CU&`pLtba;h6MUh<)4CHQMKczI3?`<%@8HxDtJ+|y%L2{wefv= ziB+Mj5N$QcxdLL%I~#1B*0`tBCbwB~)jpHQhs2(}hHl$}lA&GkWI)vGz;#{OWZ|wl z)g0@dS>v|Ef9cR3yOwfA?za4+2^qwQmOhLnpBfuwwc? z#jT$ltO0KLtRCcf9QVSU{yeXw<~-j{Q?lZ!oo8auR(#q(6VY`ldhgtY@zeiVa^3S- z%j2U1N4TBvsha_KbgDQus)<}W*ND1$GT{1&K61(iRpLvQ1hh12y3Zu?Pg40llX#M| z7dNRpaqfxxs3_Pqd&Y(2`shl$3th;grL@fXvBjd`*PYAYWnt97#y)nW<>T~#544QS zn~ENW7!H4pZ2HLSLT4x{Z#vCso<8ewo*nq=Qt0D(;)j0dqX9Q|t|R|D6YY}_Z8gnX zWE$Uq>usMNw607uTO3X0V{F_p3!x;Rk4o*hFKCiEu5SMyM4eZxhHa;88l&J{g+Mnw zJ6%*opZ=1b5O%R`G}d;#pd1&&bpH^K$#cf*Yh()c8!lsE4fo;GfxQ0pIoFC z#{5p_N;oTQKu&Uc`Vz9y&R+^48X9CFZ>%H(WGl50Lbet}TpW!;9JvYxYkr6J0p zStZRx6t|1z*H(JrvZ!6+t1i#uAi+?j$>CfFCisz>5>EuNb$M6AE~#th zX&D#?`g3YICQ55!u)ket)PgJ$$#r{WjfKPtJx4F4Sg7uXedEM1_orXv2yg z&qy`SuS|%W^0do&i=G*VgFZb!9}Kl#uJU~B#`LFiE%0eb2uxb~`Mq{}lWaPRN)=FvZDs|!atlr@9d zHsg)vo^vf~z9tF(`M1_qO4|@W033R6YO8jet?ggc@dD$l(R!Oj%HSt~s7aG^VlCs) z^Ot6~MTvFT+uZfj7m851in#D?*RK^?>u^>`OvG%7jQqO5UOxs=o;^5d_{1}Zcrf8p z8>P(5A;xz@H<~M`S*6;In_G(xuPv;u^0>{?jdj_rsJ5<8L~uH7Y|544l=&^YZKi6p zHZ8O^?>{%33U)}LI2+KYhX|=lp9h_b&IaLFo`~MrkQxR-YW_D%N*xkvfQEHLR zZX!94H?40ot%cdN-*v0jWb-m?z>LzORtT^`d$=;IOcDK!rrYl2?Dg)0hU4Ig&NI;} z%wq8iN`Oi_H}!ZWMXR%a8eeIx<$1UF-> z9t%<2y6Bsr!wCMR3q`j9klo%XLE5$I{Qu6b?Mzb2gIE`28T(~* zD~z$h+e|<#Rxfe9YDC&krNIkLfc>WubDs^nAm62xIL^=Cs-n!kr6~P|A{cj`d2V{<(0%GFYg-;fPed-^Tln?^+-|#A@#}Se0_c4nU#G@7 z)A3uQ=R`oy^zS$|Odgm~mYYr5Czj$ovK+1&$EXT`(D*`|Um(_k`<~Q=-Q;0jESV6| zKAAD?tMsw|RUQ83+Vunh|II0nQz`2%ecF{agp2+s=*R)?>Aj_F>SJ*%eGeORAm!=1 ztCzMNuK~!bpA2EVaHXdx^S9#v)Qp9Q`7oM8K2s@zLlnQCd|!l~B3Qj|_Znmof^9R= z;q2vOuQ3nL0LR4S{Q$f`gIW{|MF7|f`jXW=_R$q=X211Cs4$8fdpM@>?CiA_aNcVk zDU%CT*%GT`*{+L9A6EK?DOcbOr4ME^?17@Mv&wAQ*dZRt5P;f!zvy49^0jub83EPg zmY>>Eek}`Jf{3Mrgw!0@?H2G>L!HR9~J&=NNJ*(sDi zuk@w=!Yg_>N`q3+iNiwtR3mB%VtxB7I2yEIjyCY;<^^gM8mC$ERha*8CFanNB9Ra} zD;GROaMnNT-waqg2}E|bC}xkSNfpQ0S237n@eNoX(qTTklTe#6+|$tQ-380WFyUtV zY}Wel*V#OGyg;yef(G4ka`gk0RN~QSm0)Etf_=lq%l~ox^BQkNeC;7uCIa6uP<|og zW+0zVgYLh|xG4r{*KF;y7Cb1{i5(tO1kMJqwc4c52ErBqU&uz$xwx-d@)@B;A3!-g zYt_Y)QpYveC@$*HZ2TL9d{Koj(WCA1OmHnV^|79y2Jnk{?AV2riw3+IYRt0(yDA=NPDi~v)Ff^b6k8bC2`-{+|Cw@sFT8ql9N z?f)gdI59f)1n!%G@C0dnir@_{mY(KJzgGSC0Aaep{9#xAz^*?6$`K9Vt_Lerq|)u|6Lc_@d2D%UA zso(+w*PRc|6nlyS(J5ahPxFsp1j6&U*nBM}P7AsU!i(7OOu^1_E&pASYv>m!jS33{ z*2y~1jT_+}h@M8>zgQgJzY#7{`p)x==-mi+ipdJ|eUO-AxV^_qtHTYgx5YiwCuzLM!Va(7nTG`NyR8N zw8)0q7o3qCoTs+66N3y5Fq=nuD?s}ytx@&~c_Jt5_JGV$>hGx<#p>MzB#9u#3>e4^ zgUqKD#YJcc{ysBoKvq%niVP_3I< z?O3XAU&&#tQ7_4^!*5a&e~T@`^|pINP(he&_+7_1KVNGV{+p0cz(r}X4(qlrY#cpx zu<&F^@0mmRQ=4yW+rGPI<-bncvoT?+kUIe7E0^+Cs3t`@-Up%kn~A!>|B;WJgJ&ys zGj?bxXN2x#h<&Q@d_CB)<^B1N_VbhZXT2oWE~;^2#0)pM+so?bSZ@A> zEzd_tT+AADc&Ep%A^X#`3w3=LE>F93&hOG3d)B3cR_lYTt3szNPlm#8Z5l@s!n^lQ2W+C0nepb8ZQU?UGQ%NF#>>Uta0s| z&=O{e`1#HAvLO%|XHs-_AE*|8Kyo->X#{0DR-gtL*P;zL>=1GeAc)b+rfRMHLA(Jx z{gpz}gPlgrbGA7qc7E9shwq~uSC4mW_CqlR_(2uvp*DMqzf~{-!a^Mt0PV_jL?tRf z8~&-?v9idfQ{=$Z0#yWyKRJE(p2e*4OP8z~GBOrU4># z$u(L+gAy}O&D5y7trEL7KCxt)bx(lMmF(@!hx|3TJ_LXJ97GbJ3|vZ&!D2QrEg{_Y z!;q;1{i3_*gS{`i>41{-jgDH!vI?exo4KT?deTGo%?EnYTOn~d7y3SQk=k{7$zj|9 z0bx{2ZeU;CaG~2rbXCdmr3v9<0O6CE(qeA(Al{H3wvOiEr2>qCczT|O*wdDAoOta> z*{w}W@0|Y-4jb@4m4rA|mhPx-gY3lVjJyw_7>7?@A$) zI=zph4qM^ZmwCfBf{U6phd5rCL3-+yF#uT^ZahWOjn+4Nyf^u2{T#i0Q}UqHzBAwL z)})R?(E?PThSZ?SXte8`6I|t$G~k%YCGR*cw6xw~?rY}}zq2jIt74Xqnoh0Y`0g9M zV`3K!0)*89IEL02p}|Vo@YX^7nN@dZj-JjRwP`B5Q}pqWD;J!hQIrUvdF3n#!SlD0 z;K;siAwYeik|Pbd(+bRa92x?0?HF5&P>h}A?PW*8+)d+hg(5B7r>}A7=5R6 zW9OBN8c0bc95=7+DFM$DLl3P*v}}oW-HwOO8piJRK#zd3QHeTm0($HN z+99^XD<1AD2d_jNoqhDxI&7;5I<_OUKZ~N^qL-L^atkn~!&h)d++`#2j*xiTkWT_o$GC(R zbdpN z%I0TU-Etz=pPz&JQ3|Y4QSPbW@j`IhD%2mFSND~Kaw_UZB}fy)=Y^zOD*Q%(RK~`n z8hHm1VlS1@q$jEcFnY9kTf);3D+q5uA47=udBhC{Oz!cn{kmxp4aD<8yijJ+TGB#Ax{&=Ad?pU+N7OMF7T`OSmSO z_8K8SQIc8=iH!)c&qzGM6*LwBGgO3Ae+gWNKMLc}G)jvv7A;g-P)DbI&vk_$ZTKZF0FYvHkss?zx;r1M$PDOgHB;8e#N0c~6F_6F|{ZW!{ zX$Vh^7Gj&$Z-BdYGjF8o9C*9)g$_3lHqylLwJ!?vb@RM!wMRuPA(H$MR6BSuW1_-)xJbb$KhGLfv;!~Z!Ly>^kl8%atnbl@oP zs{Gl@d$)J(A>9>_-9BT&xM-FEtpg~pj6~N7T&BvRQ>$LSfOLzByVC^L3JARbs4 z!yj-imw045>9v8}Vt8h4cEGh`yQfgP0nDpqp920Ia@J$Y0gR_n=iKLo7vO&y2+tqP z+%lAs3xH=M7&UpMcS2mU*3D%K*==WN(HzQYC0xeFHS)GtDA8996uk;|<6)m0NoBk& zvC2XUU>B*ryi>xby1)|#iaF&~2w)p|iM1QIA3<;#0CmSr6X*9=Ox$`p!L!C|3o3T~ zI#X7e-uaf(2?8x>*~_uzS0gZMzRlX+1zo)iv9~?_dS%hHgKO@0-~P1dtN)G<=Ec;hJ%qsARGBpVGMr zLl=oCYCAB?I3&Y*whYQ!{PGQ)NLTURuUq9gwlL|z+K$!zmS)QT)UJE(N+ zsP^oJNale(3aYTuVae-w5FB@S%_1B4rFP%;KwmREU9fgoU7KTQkFLQ{d2+{$M_kDP z+?I##2M^e$zdY(4%`#Y)uWbaJUo!PsPK#=VJSo~AmsL$%#l*zHMBHnKY59YPCajFc zFU3*}*Ly5rIvuDlsYvRq^XX>9;p{};gbI_+eK2dg@YC2Z#0>Q3S9+zMcv;8Eq=Muy zT2iOfX;tX{&ECb2s~NcU0z*^z?8U7ik?mi9WQeKX7eh{!?aVimXH|+BAtI^JSO_yk zO%>yIC2bme!>*!R+)Q&uuW@adzkNxvYm>QONiyw|D7W^awer=@bUH3)$D(9<7LHv~ zQ>|ol16Y>Fb+Jm4_NeA7WZD;8;(3ss$<_hMw+r`gThR2WXIGYO?_BTxqw%pj7tde( zs-D>#0)mSkwa3!)m3cWcz8dg=x*A&@*j^^ zn=*9rf5*^Ole7r1+USc&oH{sH%nzhzZ7Abki z!yjr3Tr|q@s!$t|C$5_Nq;i@07!rIOzz{>UR%YAZuq|s`=UE}z3aJ`CI7-a%XlFK= zvlhzAN~^;>>iH4)?45IvuJE&8_5qPX>|&3SEXM6GGG zkpv9U-)m)-9o+9?aT2I6(aRgc>O z%s3^=sa3p>z2}$I#rg&&UCI10#=S1(f<5O7IJ)#&hG>|E_rIIl~d`^(6wwE@4 z#u;3f71ozNS=M@JeB+4RW0L?u$Menwut``YZ38c!Z-FfwM74T7MfGwRD<)I1FR2@% z6GY86=hJ)2^habR6G4!QnNmiRub;a+is6j-{WxD;kPe|NJIo^*+9|1dKP_IfuR4Wu zA%eFS<*q?I4TTn54-QD6Yl(FGRL*oC=Rmg9JhMZ7!4rF6#=A#xWM1`ZaW1z>i0` zYsAP=(i6{93pB{LEM6tUIwdHnU5oPvunPl2!HBjip-X8;@_$INFCW*78%y(3_s_jI zPy-TusWr)|{F2T(+@(JPUBy|UOM~@%Vh$UZq7cEUAm8U3&4O0!%43~Gso@ksINg2VKEg&Hti5%ldmI?ITC7X6jyPcv0+bd39hsGs;^~V_2j%(J9+%773O!F zSO%&seI<-ZCxxS^${5uvREDu2S*lSgL=mYf6S9}48q#AW(_x%#}6tP zmAV0G9prf{-%K|BN_EM>+I8?Kxem6(XdZnS7qg`JR^$AuLKMN=&hJ?(Fde zB@t#;kII$e^wLGjOG`)K{I=>QsM2z*Y7J1mR4-qw#h$1QHIs_Hzu_cYrTM@SKyO zI*(hudPF|8sm?55nsw59_SMTr;8l55!ML3t*_c8xcFCALZt$Q_Th-!bd65!ZY=HB$ zGNK;v!O7RqtCyu$7b<1eTkt z(eHb~Q&2jj3qq=A38XgqXp*O-kX~&U4>Ct=mA%dzN4xBPl>7I^~@epv( z>bH6Pj{uWJuVO4EGZjDp7fx-Hvh_IO6KNV%o?B8iQHgAzOK2gLYXjk_gH>y^kfXW0 zz(%EvRV`>k&r(&-Qf^G#G@0Lwd0ZoNr=wWu0DDB%LxX1_GA{0tJPdTk_3n9ynbC_l zaw$u?V?}KF46e*w1s3bT7YE{&D5^Y7&EO=fo_X=ic_rq_bW%3g(z#8xG_Wd=?pp)U z_hdRJv`L8}m2=XaMPryeoLiy>pc}|3!1ZVZpbJ2(63U8~%^yE4i;W(ZM4u^})2n&Av{EB;x~wZ3HOksNy6E z&3F{N0Z_ZAfkK}g`1Rtpp*b^NWv~TMo~gDm(kY1Q{u^&}q@k^ex?ZDk44@L7d8PCac zt-|#wPG;<@)FWnRmGX@`JrJz!pFYCF#TNI|LoO-=5-)C#UwmaUa+#t783Hul45(4j zE5~48qg1=pLmufg#Oa@((I8skQOtKL79~e+y-}~Y*r2~16_5(>o!shiY}5FrsJo6V zZSU6nfpI&6ZaGXl3Dhf4kuqvdvxpKvz!&u^s zQ)H_#pfLz6IGDg1yIIejv+4Vm>T{@+_&tjUtELE>XIsTS-U^FMS~HoN@N?^fxNmbR zNpsbtxw86(svSYaAN%DlT3iQ!Zw8&3(;B{~FFHbAU68sNvyJFnzwzGO<-hDcZ_`to z!PdlN0{u3)J#p4TCsjfBX@|KT^%-Zs_g5@*d}emfr<3Cj-mMo%@Eu)DWUeLYA74xl z-aG<|eyTptB55U!Ze*LimGhH5Cf|E-_G0GETbZ|JHPnnDL}RAe^}J*Au%S2O_K~^F zG09|MN@PhT2RK+L>K=FsMU<{B%-GrFBV>;qX&(O#-tw9MV)FbKUsS^X z(uZH+WFFxE)K)6`?R44OQ?gL8>&A-g}(NaIE6r=ZL(6f+!>MX6+RcPTo8w`l*Kh2cL-?KZ)KoANV@9*-qK$0z7)XGT91{#tSeh?5c$$)%o12^bSl^NTB)J z-kvJ4<4VW>n|RqF%YF>7#~tCsA5z+Y_6CWI26R$MC?P;#b9HvQjXCan{p3xWK8x{7 z6*p;)9T&7RE2n~NbYnoU{sc>n<|j!-$n5aISD`ZZEccxjYtDVDksKQwoUe! z_!mI0N~Q~+5In&2k?L7&u3eHZTVERz55*QA@(QV(zVlUJ$#%9G5LBHG>5vA-S9*p} z>0%_rcF11+@}n7O#fR8ke@A>Gi7TlV9%Lenh1H1v1+qE_Gh-4zWhpP|G&d8S@g*I*{J zq!X%+rzx?eh_tZXST+%g^h~{9Dk)@ciBk zlLv~xMMBc6^E;rNDGlNOfv)KQEgtb1v53pt^K)eJo!J1J`i5Kbvj5X^(Dc%VNcUd4Oj8}v44`dyTJ@gaaU2!EGe208 z#6Q6AXNo(v?@T*acs>^uj|MPCWXr@OtF+h(4|y0{WhQ&=$DVwRZun_@bF2YpmA<4@ zEL-3TSZlDWM^KPhzIG7W*o$Pi$isL*a@#>Fg2E_Ji%JSV>;pfVUN1WUFSRwh-h5I!$*cI`Wl#a*T?-`+aax>vwmWN#*W~1Lu&jky6|i)vn$CYl(Wwfw7aq*|aCV|bP1 z%P4$X)hdG-g6y3dQfO|}%W5`D)j%K}Tg;V>Gcj|`H?kfh6333wMd{UTr$LsO;KG%@ zo&~BOZFbSEE~nhtdH>h%Cld35B(_44s^>{BuRS~=sq&6oHUZlC&-;jG@XT=}rUcG5 zK!RltDsF#VzaM!jguRRs^SM5YD#hq!MQnNK7(yGvtTEU%Z&e)USgU!(r^ zUE)B^OEGfRJ_AV`Aa9R<2Xhto^*}6wO@0&YPsJ`1p!S<^tUSP)UM)6A58hdOe|dRa zsxP^us=5I)OCeuvz*aP}$?3o>0qaqN@ufm?YQH#m`Tx=#YwD_~pZ#3S;YbhWk`Y-h z7rRDFAZfve59H|xX6YdIz3K0JoLD*$gw50bf|>_RYV+EId9@Dva>}6>9_$G<*k)^Z zMRGGUFUU$PZ3SUO5tMMN$stVqq50mYIfrMLm3hLA z`hSit=xXpO4gUD(^zs*`iUL8^dZ&nksSlGdHI$n5rD;0LesncCebdbK4~HgNdUI3% z{C@bmdNX6=b@^6586@|N$Z7s1pD~?g<0tMG3}wV`c8`*?Or$>*BlYg9{_xOZ|3Dqa z+WIWDa{263S~u15BLLwq-K(zRpA|K$<@PHE)#iM7hkdrExr>t$JSKP&;nE|PQ3R6c zN3=NY$;!k)y--H+V|}OKtrTo2iP*bhhS&HfXF#Ph-B3MQFXP5!RUA+~U@ zlkdl;q)x~ z*v_S;em>>-h#%6uZGUU|r-z4*T}Ih2Em$|~IifmSQQQ^-ANkiYGK{XT2^Q%fl56IW zQsUev*k11{7}G=_xwY@QciCYn+N-ti>D)tSd!L;>r1{#PaqQyHgQ;FqJ*j;$c8iPo zRFY*MyUXV9J`QXdJaRs%tK@WW-=+}#4{jXMOMa}!zUYac+;(F(-8_%xRP?%s*SN>= z0b6iiVtns1+M}(~S_Q_;}@iD8brhKY(6gLFt0FnUciqH`iLd?2hCspz^_cHdm8<|oOUnW6skj+XZ(#*B`-RXlogo6mhM`SGH~iSvz(kf=#r;I z-ddJWLle|jl@h1E?(7-C%{kg%F~!@Jp$}?4H;6`5UmZJ)UD@$VPgpP9@y^1x*l^WD zk!XnQgZHkzaPZC4)U%{VlrQj^lUI39bOj41^K4aAh`$Y>?2Q#YE46T)4R?NWt^@AgTel zJX9jL0dLlbaMo;0Z1YA7TQ*3`H2gy~@cGvVAdKsf{d2Ai3%f%kYXi#UtOU3z)U&u> zU;cS!ZAT;ufDrv|`grQzHo<|ZE?holZ-$oEtfViUFN7_r`$=1r*NLuHC=OS8z@w9H zRoKlYaS`|XeWb)aL&S0|+A&vy`c!3w3W}%Ug9QMj_=0lu;DPyE3?tF7`-nG!F43ZS z?Vqs3p`G4C@Z_NQH(AB+)kR8F2Xt~`MDJPI?tN`9D$1sG}lYls-o;4 zX}c{^b;MZ;z6F!|!3$PE58b1zYPcVQ=Ib!7sm}BkeN5o-|0$s|=SvrmoBml!oCaWg z%!?sKbD<>85H8|fr}yzbQceyEmGU&we}3Qk#d%W8C5dR;bN{TLp*(Hh$?c{kB3>*O zV7o38c;;<{X65~0v}sWd3WT^gKHKTX2wcbER5~730n)K6LC5*T@Ik{gX1m0~e5aT* zc80OFS(my{rO3(YwE6pA49g_dLn-x$<>{Cnj}G%Fl@~)$?mfh*Nm6T_&hz0ojxI6_ zfzE#->5B(rf{#kpPZ8*ruHF$qD$oQH4r5q%nq$L{OK=mSwZz9%?4+`GLXmlV{I5-2 zz7>-C3i0l~GfEV33Lu+1@Z$1Q#Z^D80mIS)&<)Uf6#Ytyk;Gl#s#UNWqy#oE` z2e^C!c}sv7j9c7p)KMd$q$xY|#_UmwEd=!bDVPS=G%=u#KP zJx3iXoI_r%dco)}>G2z*%Kwj}dk<*o|Nj7f&d%=lt*utATK7qpmDF^zwQh*d_=F^^ zs}P0|l3lvd#Uu*x*$BB0N$zJ`DTIX&A*_%PmTMoP-}(Oj?VtK%owN7r{d_&1NgXd8 z|E-G+dIwg}$;y)roVY-vMg2V`=3K76J-D2AjzRV{-vye-cchJ0%`H+u+1mCH?R46z zJd?vWeaVj3ysA}Nwf$K^dnnTYjcKu<@pX%)zQ(G_h|v1OoEM?!UF3FozpbGg7p4%C zGdc}1*hch(=cli)&ViWoTWC+#h#eDg?V-aO#T;0|iU8Dqkku+ZrMrxi;Th^V-dCh5K z(I>w#+1$P3K`#;>+EzBM-qrRC|GE=hi^=7@r6x$*B3E`5+2?7|a~nH-j`Og-i3apU zYe?|0851#>?tG#{^)*aS-tFy1$$$~&!4hmY>H*ulvBuiBcx>By_ki=&IurZ3xl}L$ zv#i6hF8B1v=s1HFFNh{6v}Nn+UK7)0(M`8`)U+NQ*+v6}G|s~=o88C##=p*KwPGWR zdV4-tux^>i__EQ&t?#6gB~fzql}JWhqpkY`$@osNC!uoJ4q%K~Eoe1xBBJjODUF*Y zK~`~~RW0ZQgS$-*If}NuCVrEFmKPmCS34vq31#&q;Ed~tT&gin;Hck!0Fx__69~Wn z3~qzaxUzqgUljzx=xTNTd6QZw? z>)mUV^JGv+g3+ZF9Ca3{9A53107#IhG5!^mVO0euN82|TtrwhKgC!BNXj`P`2~Y-0 ziLPY^8|(aDPhQ_7x4WDoNC=;rgMtvt)mIeSU~=Ipw6O@%XgH@-|5`!ASXEgbFs@FN zQLhY=NjN#_K&~Mq$z&H(*7(ij(+QK2gJOZ=L@*MXlI*{&;B=)-Og3>F6nOLjOs+V% zM$JYZtINa@!4lgVB^0dS!4gD(#U=vtaur&FaP$BVr=Q zw_d_85MSOL=a&nOlYucg=p-KOiLjP(u%{6?PylfGP`E|OOi)4%sK^%MDETWGF&NFr zj1JF>wq=>ZU;}+nDfBft6@Vzf5F}H3W+DM(ZPbILtvLW!28~xJy@C{oP&uA&*i08W zq5may!dZJ2n1<+Zc{D!t0Em`^C8KB@Wm}^tV5u9#fqgsG9#)Y}QgpaL&6J7I6*|8r z1GWYZ$%WhmFrclXCBpUz(7E4Yzs_h5<p)a5$(CzG>PrH-|E4T&7{O9tatb@bdv$ zokGxT_LzLAJ;@D|14YWAP!CB^A{6n}_p2DGoPd82`l3(rU{!L^8db-d7I zlY^g0T431zcwZFH$UqxfMQuU0YBpUndcxOz97|c#sz^-fi74AU-oq4RkxXET?fD8w z;Xba$aIfwzRyH?mXTNjPi)KI3NTA8i3}2`dMSgr~hisL9%&_MbJ*!h9s9#G=-NBi@4>q4bs!UH-l(SMgB;cj%tJWt4#K6OB9e@DUlF|4K(5d9)AVCwM1nF2ztyAU zb`oWBE1GYdP^KO)hk_DKi1ZuASJom(FPa@AxK5~01T~pL%bbEd)WTuN>vDBlj)ELx z3=qrY1!xuyUS%-1w- zzIP}>F0qwkMo9_k$Q~u5jC3(Ed+&^Xst};dBqz6y-Y?b)e)x_}M zl~t<+boD`^ITM)<>A8+vPIT3AJ|JdbZ z^u%ZkrA*Wx(|=|V1_iQl9c{&PW?<2(&_u{KK^%JzjO40u#|>efDn>$dcn*rygNmRV zaUzv)B>Lx4AZb}n;!Tem|H1^zWVElUfe8gCzY9RfTdU$eUF6)_=(bk`@lB%>l1;~b z1_OqpUGf!Me9I{{iZKdED1w5ms*qL_zu=&k8QPxGx4l_xzf?JfvuKc|=9Iyx24e_< z5%Xt{t%w$WH39-v!>pqRnWg~qqs;?H!n+T9J%0P3Z%P)`(WOVprh|56pxtGWcB%Tb zgU{lXG`!#)Mz|Q=p$wHukmY`MnSq_8R9ea!A4?oHm4r0nx@IMXtUMAt`2>M2{;lpH zs3xRBc121DpcF9&S(gC6D>DiXTk{C*f&|Jq@p56qDL7P<)xs;%lF1c3?dR~!>?EX zM>bt6sZabp9mOJ{h7Dmt$hHV%l!@7?Voq)wmHfKZt7LzaX@ZCG>6%Y$4qiOJmCAPw z$x*wNi8(@W_8H$~qa>g}89K{&>rQS)E^LoidDWOA6QXIpfP1dVPh|4PL*qE=aC9`v zY>41O%*KG8^-Jky#h!~2M$7X5q)Q2;a&dQ?zZtPuVGL6DblJ9h%ZEkPhZfHe`4tljO|Ge>QRm|(IRiy6qvW{{9Z|5kx2Yoa(18T>~r3jCR5YTmlKD@ zp7?ogY>)n(3PFe3p9Q{as$u8Dwq#QnJsRHtUmGSORlCvZkYxE z28A(dck{l)l?VA~QN~XgcUhbwXob(PX^g@^j!_0b==N!f4w6A(JR=4M z{Yn++;Tfoi(q|s&_-pX?UDl{aBw_|^U#E_2Qt<}G9s?+!GBJPUvPJjg`>Pd@CYrHN z%uO|nl99?OU*m)Vlh2^RImhUm^TNq}h%^keanLBT>e3Mqj16o`GDb>IGXz_Zy*NX* ziO-1!@1ndr6QIPlunGxZ^qhH_fQwNJS!&N1RnRL**wq*L`_yCkN~h4VZ>b>T74O|0 zLO>Z5oNp*+y`lyKD86x9ztJ6!@)=O^9*79}s$>z$BY$pK1xU{Qth)aG^24#NIY9VL zXk3ws%lquxWUxzRp&H)>dZ3&e#5So-V{-ENgUV@VkLQT)M^-?ttp@ut8bt_(Tvi8o z7@hgXu|3fagMzq0(MOeJLZ-@3Cjc>pI5ELm5a-Af{#lkG?>Em>VP8U zqLa|#-G?T`KrZHeq~B=2e3r~JCZG2O7h3WYT(Z9J1^`$mVrPEP7>XTLJ} zb3pG`5>NB72)yd^{>-ozC>(J^IjWuZt++h#s9!x4-k=WbQDSpMgv+W4b&{}x$)Od| zw!yavBckoKlF-EM+vn{WcN`Md{0QTiCL@E9K}E-U)r2xhnDyUat7L4x$R;m3>T5Kk zJJ!=G325-7bI&!LHL=bc&>o(?R#PAn6K849q>QEK)`xZf7asAzuFjsGtB%xs-MIe8 zsrQo-j~^H_X!P$f@(~<4S7Fm=bZdNdW>2(d6Zo{ahc;*!+tcIM=s-p;%_30Eca44t zMyEuB|19Ge%LlkD4ofypNK&u*k*!{J*f+u$2Y#fE;K?;>PPZcke4vd~%-svnbBz8R z#MVUF`cB2gMEe60FN<=FR5d!eT7l^>j73K?%%ba!&Q2PY&kL%pNeRE z!PyNTMCf3EOaJBn73Ec=WFTEAsfKvRaE~GY837#T7#urMToLH;D%!3do@6xgIVrv) zAgk3e+MQT4#^-)zO;LKt69BuC7Ax|8C%hnV-tH z#(b@Qn{)re-<>x+6}SOPKTCn-WBZ%--?k+2{BZAa*S?iw5!d(cD>L6;EhTt}J^-zy zXnR>^f+$19U2*OS-(F)eUE>7)nK|Mu7b(fXJ|Bk{x{8%(W{7e4Jan)G!z3oqyH=Fm z)Y$pwz-f$ycQysv7A0C-CEy-mFgbYLX&AR9a6@yd!qnF4Bpz1*cl`~uZI7_YyP`?! zo5=C<@DLugS(ZkLzigMKURd?^;kgZV%bzz3wQ;X6sh7uc1jZC@#r@)P1AjE_ zsC0;iyJ=*5&mN&CXm+?)bUEJ{vo4){CvB;9D!Fdlf+OL~4Yma#3t!)?Id?U7S4&XN zU7P=~A!O(^w)oP=8vDNJ)k`~svqB5G>)JCNTVgjvTrdqSfNwsUd?F{Kc+2z79d^^I zK1W!t-q>q8o|wG6;J+_#AD!RivguFLjjY-?R|}e7UpL(dEzjwIAsgBKBcgNIn6XWx z1;>ty>wn%K1D~&6b$dS+H}<%mfL`>bHvB5GeN6^yr{2KmpH`*4;?P_!0(}Zt2SCFYc-{jU%9fJBNvHDi`pZl5!>fYAT zw~`aYm$LGd;6)}AdGgT#+{;-sg4wnGO-gsm2^lX``7X?8?82 zP`09FT?w9hYwk_qMJn-lyS}q zaWR`KGmwK{CBFpOi8Bo7lD#d_B-QzR9-e9L?5^;3+gbandTP|VBu*jzmCdZw=Fyki zymOPKQJb=~>e{S^>DhH6XJJ~A-;6H%+O&~;UJ%=s6XTE!%*nRTiURxa)Xon3#j{?~ zmDx2{{x}Tkhak98^3@D3jST6MDD19wl01ps-H&ZV1H+ly#=0ThSc{@`FRRlUz)YoG zf*_gHKz=V9+GEtGh@a5f!YtP@a z2hAqx{VQ+gZzaxGxPH03en1D}%*p-Ry}jxlqiy7MiW)nm;u;)@9i7{x0~#BwYm+++*d zR&UuIq)`&9&d=O9x z3mSlJPX6~V)4UUZ4&${{dE}{VrviV$)5u;qW$w$LA?MYB?-uQPnwsCsi^%A@vk_}E zv7OH^yt%r97$QTpS7f1kuAE$%CQup@VYH35dksdo^Yy#ebMEZ;R6uKMaJjJ7m$-8I z$eCjcK3^@l_VZgn;f_7ecx|;;3A6N zFLH0HYn?PrzxjNo3v0E3wKd0x-@l*jva3Bdu;hMa)8)gCBz#y{6=veH>FD7eeg``c zWP~vYw|R4JtcW_XDAfYF!iu(#Lt80ag)*}404G(i+{F(X7-d}#d;<-x=9;!S$Hb2v zgRNTci`vI(vlPto3C`iVmy9b*Glr#57KP}GbI=fD0k8AqtDbiUKDVKf)_GjE-!+>@ zZCI=TM$93yCyO_RIcM{XrgTkZtJd2-Su`a=^tx&!1H82p#^gxr7>Wi@rhd}FQ_r?9 z+QeIh8oi+q-CPOw*YP|s3I%Sx$Z^FF572HHShYs31Od?TMvDZG)idaq94r=YBIf2A z{Hy`x(G4fqYce(DTts~RCXEm44kY>{%IqE_o5&3?2>H4>T(P3?i^0md5o+#ZbCKOu z!8Sr3%zgyKhZJ;`xaOXQ_H|%|_mmYgi(K)M78om(ZeCa;acqZU9CP(WTNk?9Zq;Ka z-0UTd&$p0obeDu*4cy|EAM;OPS)6Z$u5u;aojSkHh+3nhtTIE+-{tWU=?rWNmiws} zIYKKPAk{b<3o$O$Z|P?DGwO1llA4RY9RY|9xiwoR`WPo z=6hLu$nI_B8OdszeT&LlW`-?X}SMb@))$2z?EI?p2lSA4Bd;`uYzv)mULO%&m6)H&{k%659`pP$C)UyVAap zhc)x;2Mvh1ijU~!R`k+NTF5hcxw$&B1Au;~bQl&M5BK?Hm7gi^U;Kj$)T-3K?#P@5yqEAz1(OW84KGy>1Achuwi$d zXNmb-1?#8Ij%Oiz9HSsq9Tp}uD;=+D!Fr1`LTd4lW1a;nk$LlFoOiCQ2nEhd1ZBhc z4KTn-b7>J%Y5-&;hQ4zc$=ZU_G~`dh4`=;)qO`vWKy)qXA^1ZkLwm_cpFhy9@(QnO z?7#4_KRZ;Hy)~`vxRYD_@3bRZXOvw!3Ny}EV0rma*B|!(pc@$gd1fbH12oM7aC9zp zI>5|xe$wlBaTIhp=jzhqN|IY}MPlbB&_2%<5$*6Q5qiJK!3;8HRYV*;fUDHuD-?nz z3CP#7c3R)dMgQ=X&RcY7M+;7$#@%PZ_b((hgWxrhes`DWwhl~P>85)kb0XfMr6h6-Em6aYKf>0A_PzyQzra++O5n%&9I>=cl=#)58! zSsGWT{$8g%S8^`T^}NBJuEZS;43_T4ZFEJN3_{(YjRK}i0a<{YJR;86-9#W(k>g-5 zp#s27_IrV_sMBD~{OUkgzSr0suiF|2Ctv^Q1n&zg(EgPHWSQ+9SLS?I=iE_Ol2E(7 z#Ngb$0wMOC%XL5}%xwh8Pqf5BEwM~ND$u$Gi!gG{qMrulP7CcI;t}ewRY0uFjr~b% z8x7-$FAG=-Knl977ZaE!f}PH3i;gl)3!VhHJ-xJC80}`^%>Im?CUSH5JMvgNy7}-1 z|Hd7Sr_1`>i?}k{L#4e|gg)bjT^0?Y(-20Id(ps*TUD(x(CvAkRBQXwV9V5!YQ$V$ zSM+{AkK@Q7rEM$|24rb2(K^C#F6U<&JKuuJT#D@X`Hj^%uT)Ohy9%2V=pMSYqh7## z1v=dXK%`>9qI38t%XWha`ZNyRm4v8mbs3Shqj{@jiuxW!o*>~URfo}9ygnJRcWm&@ zVka*p?YWFtp>-1ikgAvaUB@wMUseZkMtU75ixDo<+1yKu5@AOyKcq@J3uG7S*dASk zLf4zfth-6)%uU1P0&6=#EgZwA&iSgDF z)SZB5;Wlcs(sdk+$t9w?(%Af7b{I%2ks0sA(!<2;B#@0x!~LF44;E)1_?U_|q2pw< z;9ho;*rpH8UMoXcv^IEGTS^fgF;VCDveU)ct6iCHFgVP#*%`uYwS4qYVGCheVp=vE z{2mpO39U_$iLlOEl(~QYd|3f7J8G5;`QX@iuSP0aK&FLxM;9RflK_u6Hycj?wOH$p z1cmJsUfDAIamgA#UVfwu|MM^T;q&vVV=-PZDnhhjVRnLZ45m;<8qspEgUlKjoem$W z*RFChKryE4DPwQtp(1y8hHfcd(GGd$HWA0H!Cb5eI9anEs+;|%_Hx9*4L1(B8ACX& z%8y1ZzRr|V+Z((@yJ=~z|0p`Fp!KS`Q@q}N)7lD`pEIyN$?6RdQuAG$g^6tKlLlMJ z*}ZmBC8;~sElPn82JwsXCq~(NR{cFus6bm}2>&Os4=vtWm(oA_1_QIS&1*=!o#Kb#e!z2yKc3G6Z+>igVPh}@uXs`iW(6}}b) zhx!R&novwhu8evvtQr+2ug}0wlWB0fwz5fojR*s$nUV^G*wj4VJfT}Y@RuNI6u@ho;Wbf%+k5*Kq*H9qJ%TD^!IMKb#BL+*o&znG5v8q%7AtTa z3&BJ!^OeDN1`I8>%(6jBCV2oyixs*DYMA27qwDfYAMd+@#Z9w-ceEIk4)aii4S5^& z=QWYlOMWh5xEZh$B+y9_)lJMm`h|8X&|X>+%RtwQFsT4!5i$Ej5Ic>rSZO!gmFXcS z%h}Ws9@7o9F#`L>!vwVMU?5^2TlcMclId(A#J!=*T}Sh@sED$lUbjt7JmzNu0{J>x z(wyh(C|d3QQ!+av6A>alG-$D9XSgUOE}OUQtC-%aJ<_Ig`YCql({Z0GY|g2un~0=!b?#4d>O)?CGOSU07#E(BE&`_YT7bWBJ%C-0g*cyANg6X~5vTXc zXeX7Y$=Q~d-M#h?c;v<6FVO(9qfSe34R-=*&qeDzQFseX zt`@s+)7Gs;f%$39Wv9;rIiQj^d*su34qp#%Cx;ClO;n>8OP_ zh3SY-ffbfsJG}xy%|#OAjkAZ6qb{QKFfpV8{Jwlph|aMy=)~x zB&4{ac|7zhzp#^gE;vRc#fe7uKg}ByjXs1SPQ9OgI>>Sje+q+cB8Ekbd||g8=w&*2tvDcRNl4f~hlaRwv4+GtUW$`#4bsW4awRKcM6!sN4 z)!&e0sq(a&9l(nR8XY|6UNSuesoMB+<4`Klr626gzbuzkQA89X-xQ zFk>!L{%mlLQPL2k)MBAn6r@AI+A%!#K$>%5Fl7GQ?Rf#Z5{i5~;<7#he)_?M8jof5 zvJo`2Pt44=XeiGf1r%@Xe5*RN!tXA}KX` zv#)S<&U7X5cTFe+u5EB7@>YjhYWOo8L3)_j9;FVF`dZDM=Jnq6Jkrd+NFzGJ1tAzk4PVF^j7d3 zU?pe1nDZ`;i#I^)H}=0Nl+M!57v7}U?m3VG>{_q{_jMAZ(?FaUVO`!!je`e%!w$_m zoHS{yqYB)UOB^kX%>|(38hg16&mS#8VS63>dY!v(-}i_M_LX1GwJy5NucE{cJ%+zj+&hUM54D24}(XtuAlAlLM`DmZYK z2#VnCK5oL49sfDb(qCosY~#q+Q5~n<58C<9qc%6o!UezIm@swkKs4~@X+H?OjJi5@ z{ziCeIuGBl)-9RDD}b%N8SPZ&*qz+zy7aa!&LQMKzuGlAnq#EuxQ5}5EzkP+r*j~% zD=l6v-kDegX6(OJE6BK6Kk4kD+k1qo-u2u#d-(1@A~n%za#Lg1frRZoCpJUv1iPuF zgK%JL+r3T9(F^i4{TS0|t?!;SnTzD_Z=Lq@ep1H|!Itcuq$L~>4S(Wf>4{a0e!X~?JQ*qrlg+J@NKbI(+sxES+(<%es{RNL1FLTPh2{Kz$y znZNDh+fDk6Tl=P7YX0!F#qY0WVdM4l4`3HudL=UQ*uK7-*5vNKbm7Yz^MNVcvrPx^ zoTb6r{;B=zy7|TOr0Z6RXJ1n_CTU?CJU4r9<=d395TR7XnJP8J>|0Ud^RBT0+y4wl zqMvT(I6nZ2H^)4-Ji{YFzs|7b4Rj+pUKp$d?GoflT!iSfisbZrz2Qvj(McwhP14FL zKi33}kuIs1tFZRy4Pr{ju*Lz0&9@jZga%kb^Z0$hfI4^7F^2B3bMdDu!~M5x2)6tn zO2qrl`xKwJ0`u$9>1V37WfR`ltM5j9>U>$wvFV_17CfsnQG+yAsRg%^moY8k3H?5f z<^t;~g>RY;Y>gUHWF$0u)_txBd0!)`;0$h&#RXp)ymve7u`Jz`LW)t{4tt*n-5^UI z9Q*VjY4*H#=u>r)PUjW%f#qRv*=heJPn=>@HisHlQX*S>`bZu#D?~BDPZK5NprMNG z2^0yE@eLUY&gcw&*27d0X6JpLEclRgzuc!WI1r7^K7L^8xKr@~DWc|Gu_Plys3Cs7lyx9BA*BMy5S-z)R2~Paa zadzpcL${)i@rKq792gMWIP0i6ooQIHMoF%RNgHI*gvIIiKX@e=h*58_4}mz&P7B+H z%VWO~wUP_;HAm_!c2?xw1-bgMTUof;~UR{Pm)vys)$Sa-gVd7dluJdbT zs;UvVteGzvHwr>Hv#Zl5-gW;3LwTV7ppb1dys zd<1~|)ieU5Y06*zmX{G$0b0OY0`kd4=o$eKXNLAH5GujK76nk3<~Y!z#)r*l{XWJO z8rKa{_<`&>cNR#R{``K;Q@C`zkg++l!({hN68)cJcVUrg6Hw1U$@EVrF=tg3BPzTKz-R_a_XSOdfb^GH@zZ zuAjEy*HhMF;y<mGwm*A|r?}g23T#mQ+xgbBx=R$LTY+=$=qj#G zKfey1YE}K!ICd~kx7`05({|By(fe$o>Bp*lRbP2fjxc`QAFI+;RPf9uw521y${8HP z6-ZVJbq|(0ZQfKbRjoF93c9ck`8}~b+JqZx?|eB57L1>0M?8MC)r*rOLfHz$cWdwD zjb9T35fT(=B(KL2MZO~p1CR5AzD9Vy>6uEq)SWdhFVgANu0!VH009F_8C0^)nq$ZG z0~q@0(TEuV_DU?Bvz=W5LvGUBn~MJae%kSmb<-H6(zUNBvkcmIUaAK9+sL`r3};&E z{b!*s_m3UyB_^-AK}_0F(oUW~aZCK=ce4X(s>~KBq~-p@?Poqx>h?Qb5)`@KazLjm8ZdWu)sD7SkIBdHUj4pQ<-f(98=wK6or(+Iypb%ut#mYQW zlG})JX>>yw;+FKC-^gm&=mTVLvl6dqNC#nDgmq5&8z+S3Iw+!i(U5jt_n6!cj^YJK za+$cb4^=oDRY)hU)q_4#RF0mwRtwJ75)Q$n$_&y$9&xcA&DG;~0HohA<&bny0ngt@ z24+9Zt`^`VT4uN+eHVaRBwu(?gHIL&%=lZGjZ{PcxNEW*cLkK!W^x@bIs1*1N zxT$6c5$&$Qg7^B!jr3%p4A=prwgS{wblO80hfgY5C@hb_6}%7-HEd*4Yn%qa4DDo5 zhMk39;j6vBcf#)WfVQFm%U8x4Atl1XspK??y~gPhu?z%Q3$l^AHA z7Na)P{#D?Xn{gg7kf*lnx`4RFO8OupuZ5v03Sftn_CrQFV8w1z5LeL4(Q)P2Nh?G3 zq;4&Cj@g%2;=2-Z}MVX0QOJU+Pp=z3=8>*_~HNNr&uQGcV+923HUcWPV z$0VEf-JJ^b84TpD06OH<69U{q^Y|5X+)M@IXTHi+hK9$~4--

xo_f)X9K|BJ4{# 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

  • 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 Date: Wed, 1 Jul 2026 01:46:22 -0700 Subject: [PATCH 3/3] fix(agents): non-interactive --yes, AGENTS.md marker safety, CI hardening Addresses the review findings on this PR (Gemini / CodeRabbit / Kilo): - --yes now skips every prompt. --legacy --yes and the default mode no longer block on the overwrite prompt, so non-interactive/CI runs can't hang (the flag's whole purpose). - --all resolves the AGENTS.md decision and writes it first, so cancelling aborts before any .mdc files are written (no half-done state). - AGENTS.md updates require a valid, ordered start/end marker pair (findManagedBlock); an orphaned start marker is treated as a foreign file instead of being silently corrupted, and the end marker is matched after the start. - Heading demotion is incremental (h1->h2 ... capped at h6) and skips fenced code blocks (demoteHeadings), preserving each module's hierarchy. Hardening & hygiene: - CI: least-privilege permissions, persist-credentials:false, actions pinned to commit SHAs. - Add MIT LICENSE (package.json already declares MIT). - tests/fixes.test.js: 10 regression tests incl. CLI subprocess checks that fail if --yes ever blocks on a prompt. Suite now 31/31 green. --- .github/workflows/ci.yml | 16 +++-- LICENSE | 21 +++++++ src/cli.js | 22 ++++--- src/compose.js | 56 +++++++++++++++--- tests/fixes.test.js | 124 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 220 insertions(+), 19 deletions(-) create mode 100644 LICENSE create mode 100644 tests/fixes.test.js diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b321777..3642d2e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,6 +6,10 @@ on: pull_request: branches: [main] +# Least privilege: these jobs only read the repo and run tests. +permissions: + contents: read + jobs: test: runs-on: ubuntu-latest @@ -14,10 +18,12 @@ jobs: matrix: node-version: [18, 20, 22] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + with: + persist-credentials: false - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 with: node-version: ${{ matrix.node-version }} @@ -31,8 +37,10 @@ jobs: # Proves the headline claim — the CLI runs non-interactively and writes files. runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + with: + persist-credentials: false + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 with: node-version: 20 - run: npm install diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..cc340e4 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 Kabi10 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/src/cli.js b/src/cli.js index 378cde0..ba03c7c 100644 --- a/src/cli.js +++ b/src/cli.js @@ -10,7 +10,7 @@ import { writeRulesAgentsMd, estimateTokens, composeModules, - AGENTS_START, + findManagedBlock, } from './compose.js'; const ALL_MODULES = [ @@ -131,7 +131,7 @@ async function main() { // --legacy: single .cursorrules file if (isLegacy) { const outFile = '.cursorrules'; - if (existsSync(outFile)) { + if (!isYes && existsSync(outFile)) { const { action } = await prompts({ type: 'select', name: 'action', @@ -170,14 +170,18 @@ async function main() { // --all: per-module .mdc AND AGENTS.md in one pass if (isAll) { - const written = writeRulesMdc(selected); const tokens = reportTokens(); + // Resolve the AGENTS.md decision and write it first so a cancel aborts + // before any .mdc files are written (no half-done state). const onForeignFile = await resolveForeignDecision(isYes); const result = writeRulesAgentsMd(selected, process.cwd(), { onForeignFile }); - console.log('\n' + kleur.green('Done! ') + `Wrote ${written.length} rule file(s) to ${kleur.bold('.cursor/rules/')}`); - if (result.action !== 'cancelled') { - console.log(kleur.green(' ') + `${actionVerb(result.action)} ${kleur.bold('AGENTS.md')} (~${tokens} tokens)`); + if (result.action === 'cancelled') { + console.log(kleur.yellow('Cancelled.')); + process.exit(0); } + const written = writeRulesMdc(selected); + console.log('\n' + kleur.green('Done! ') + `Wrote ${written.length} rule file(s) to ${kleur.bold('.cursor/rules/')}`); + console.log(kleur.green(' ') + `${actionVerb(result.action)} ${kleur.bold('AGENTS.md')} (~${tokens} tokens)`); console.log(kleur.dim('Restart Cursor to apply.\n')); return; } @@ -188,7 +192,7 @@ async function main() { ? readdirSync(rulesDir).filter(f => f.endsWith('.mdc')) : []; - if (existingMdc.length > 0) { + if (!isYes && existingMdc.length > 0) { const { action } = await prompts({ type: 'select', name: 'action', @@ -220,7 +224,9 @@ async function main() { async function resolveForeignDecision(isYes) { const p = join(process.cwd(), 'AGENTS.md'); if (!existsSync(p)) return () => 'append'; - if (readFileSync(p, 'utf8').includes(AGENTS_START)) return () => 'append'; + // A valid managed block is replaced in place by the writer — no prompt needed. + if (findManagedBlock(readFileSync(p, 'utf8'))) return () => 'append'; + // Non-interactive: never prompt; append a managed block, preserving the file. if (isYes) return () => 'append'; const { action } = await prompts({ diff --git a/src/compose.js b/src/compose.js index 8a240ea..59af05c 100644 --- a/src/compose.js +++ b/src/compose.js @@ -40,6 +40,49 @@ export function estimateTokens(text) { return Math.ceil(text.length / 4); } +/** + * Demotes every ATX markdown heading one level (h1→h2 … h5→h6), capping at h6, + * so a composed AGENTS.md keeps a single top-level H1 while preserving each + * module's internal heading hierarchy. Headings inside fenced code blocks + * (``` / ~~~) are left untouched. + * + * @param {string} md + * @returns {string} + */ +export function demoteHeadings(md) { + let inFence = false; + return md + .split('\n') + .map((line) => { + if (/^\s*(```|~~~)/.test(line)) { + inFence = !inFence; + return line; + } + if (inFence) return line; + return line.replace(/^(#{1,6})(\s)/, (_, hashes, ws) => + (hashes.length >= 6 ? hashes : hashes + '#') + ws + ); + }) + .join('\n'); +} + +/** + * Locates cursor-compose's managed block: the start marker and the first end + * marker that follows it. Returns null when a valid, ordered pair is absent + * (e.g. an orphaned start marker), so callers treat the file as foreign rather + * than corrupt it. + * + * @param {string} content + * @returns {{ startIdx: number, endIdx: number } | null} + */ +export function findManagedBlock(content) { + const startIdx = content.indexOf(AGENTS_START); + if (startIdx === -1) return null; + const endIdx = content.indexOf(AGENTS_END, startIdx + AGENTS_START.length); + if (endIdx === -1) return null; + return { startIdx, endIdx }; +} + /** * Writes each selected module as its own .mdc file with proper YAML frontmatter. * Files are written to .cursor/rules/ with numeric prefixes for load order. @@ -108,8 +151,8 @@ export function buildAgentsBlock(moduleIds) { return null; } const content = readFileSync(modPath, 'utf8').trim(); - // Demote module headings so AGENTS.md has a single top-level H1. - return content.replace(/^# /gm, '## '); + // Demote every module heading one level so AGENTS.md keeps a single H1. + return demoteHeadings(content); }).filter(Boolean); const header = @@ -146,12 +189,11 @@ export function writeRulesAgentsMd(moduleIds, cwd = process.cwd(), opts = {}) { } const existing = readFileSync(outPath, 'utf8'); - const startIdx = existing.indexOf(AGENTS_START); - const endIdx = existing.indexOf(AGENTS_END); + const managed = findManagedBlock(existing); - if (startIdx !== -1 && endIdx !== -1 && endIdx > startIdx) { - const before = existing.slice(0, startIdx); - const after = existing.slice(endIdx + AGENTS_END.length); + if (managed) { + const before = existing.slice(0, managed.startIdx); + const after = existing.slice(managed.endIdx + AGENTS_END.length); writeFileSync(outPath, `${before}${block}${after}`, 'utf8'); return { outPath, action: 'updated' }; } diff --git a/tests/fixes.test.js b/tests/fixes.test.js new file mode 100644 index 0000000..91ee7c0 --- /dev/null +++ b/tests/fixes.test.js @@ -0,0 +1,124 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { execFileSync } from 'node:child_process'; +import { + mkdtempSync, + mkdirSync, + writeFileSync, + readFileSync, + existsSync, +} from 'node:fs'; +import { tmpdir } from 'node:os'; +import { join, dirname } from 'node:path'; +import { fileURLToPath } from 'node:url'; + +import { + findManagedBlock, + demoteHeadings, + writeRulesAgentsMd, + AGENTS_START, + AGENTS_END, +} from '../src/compose.js'; + +const CLI = join(dirname(fileURLToPath(import.meta.url)), '..', 'src', 'cli.js'); +const tmp = () => mkdtempSync(join(tmpdir(), 'cc-')); + +// Runs the real CLI as a subprocess with no stdin. Throws on non-zero exit or +// if it blocks on a prompt (timeout) — exactly the regression we're guarding. +function runCli(cwd, args) { + return execFileSync(process.execPath, [CLI, ...args], { + cwd, + encoding: 'utf8', + timeout: 20000, + stdio: ['ignore', 'pipe', 'pipe'], + }); +} + +// ── findManagedBlock: both markers, in order ──────────────────────────────── +test('findManagedBlock finds a valid, ordered marker pair', () => { + const m = findManagedBlock(`intro\n${AGENTS_START}\nbody\n${AGENTS_END}\noutro`); + assert.ok(m && m.startIdx < m.endIdx); +}); + +test('findManagedBlock returns null for an orphaned start marker', () => { + assert.equal(findManagedBlock(`${AGENTS_START}\nno end marker here`), null); +}); + +test('findManagedBlock ignores an end marker that precedes the start', () => { + assert.equal(findManagedBlock(`${AGENTS_END}\n${AGENTS_START}\nstill no trailing end`), null); +}); + +// ── demoteHeadings: incremental, capped at h6, fence-aware ─────────────────── +test('demoteHeadings shifts every level by one and caps at h6', () => { + assert.equal( + demoteHeadings('# A\n## B\n###### F\nbody'), + '## A\n### B\n###### F\nbody' + ); +}); + +test('demoteHeadings leaves headings inside fenced code blocks untouched', () => { + assert.equal( + demoteHeadings('# Title\n```\n# not a heading\n```'), + '## Title\n```\n# not a heading\n```' + ); +}); + +// ── writeRulesAgentsMd: marker safety ─────────────────────────────────────── +test('a file with an orphaned start marker is treated as foreign, not corrupted', () => { + const dir = tmp(); + const p = join(dir, 'AGENTS.md'); + const original = `${AGENTS_START}\nhand-written, missing an end marker\n`; + writeFileSync(p, original, 'utf8'); + + const res = writeRulesAgentsMd(['core'], dir, { onForeignFile: () => 'cancel' }); + + assert.equal(res.action, 'cancelled'); + assert.equal(readFileSync(p, 'utf8'), original); // left byte-for-byte intact +}); + +test('regenerating a managed block preserves content outside the markers', () => { + const dir = tmp(); + const p = join(dir, 'AGENTS.md'); + writeRulesAgentsMd(['core'], dir); // create + writeFileSync(p, readFileSync(p, 'utf8') + '\n## Hand-added section\nkeep me\n', 'utf8'); + + const res = writeRulesAgentsMd(['core'], dir); + + assert.equal(res.action, 'updated'); + assert.match(readFileSync(p, 'utf8'), /Hand-added section/); +}); + +// ── CLI non-interactive mode: the --yes hang regressions ──────────────────── +test('CLI: default --yes overwrites existing .cursor/rules without prompting', () => { + const dir = tmp(); + const rules = join(dir, '.cursor', 'rules'); + mkdirSync(rules, { recursive: true }); + writeFileSync(join(rules, '010-core.mdc'), 'stale', 'utf8'); + writeFileSync(join(dir, 'package.json'), '{"dependencies":{"next":"14.0.0"}}', 'utf8'); + + runCli(dir, ['--yes']); // hangs on the old code (prompt); throws if so + + assert.ok(existsSync(join(rules, '030-nextjs.mdc'))); +}); + +test('CLI: --legacy --yes overwrites existing .cursorrules without prompting', () => { + const dir = tmp(); + writeFileSync(join(dir, '.cursorrules'), 'STALE', 'utf8'); + + runCli(dir, ['--legacy', '--yes']); // hangs on the old code (prompt); throws if so + + const out = readFileSync(join(dir, '.cursorrules'), 'utf8'); + assert.notEqual(out, 'STALE'); + assert.ok(out.length > 0); +}); + +test('CLI: --agents --yes appends to a foreign AGENTS.md without prompting', () => { + const dir = tmp(); + writeFileSync(join(dir, 'AGENTS.md'), '# My existing rules\nkeep this line\n', 'utf8'); + + runCli(dir, ['--agents', '--yes']); + + const md = readFileSync(join(dir, 'AGENTS.md'), 'utf8'); + assert.match(md, /keep this line/); // original content preserved + assert.ok(findManagedBlock(md)); // a valid managed block was added +});