@k-system/tickr-mcp 1.0.2 → 1.1.1
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/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +94 -27
- package/dist/cli/setup.js.map +1 -1
- package/dist/server.js +5 -63
- package/package.json +1 -1
package/dist/cli/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":";AACA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAsyBH,wBAA8B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAyMnD"}
|
package/dist/cli/setup.js
CHANGED
|
@@ -69,7 +69,7 @@ Tvoje hlavní odpovědnosti:
|
|
|
69
69
|
Smíš přepínat POUZE tyto statusy:
|
|
70
70
|
- Planning → Ready to Develop (zadání hotové, dev může začít)
|
|
71
71
|
- Analytic Review → Human Review (review schválen, pokračuje k člověku)
|
|
72
|
-
- Analytic Review →
|
|
72
|
+
- Analytic Review → Ready to Develop (vrácení dev agentovi k přepracování)
|
|
73
73
|
|
|
74
74
|
**NIKDY** nepřepínej:
|
|
75
75
|
- Ready to Develop → In Progress (to je práce dev agenta)
|
|
@@ -138,7 +138,7 @@ Máš k dispozici MCP server \`@k-system/tickr-mcp\` — používej ho jako prim
|
|
|
138
138
|
2. \`create_ticket(type, title, scope, priority, content)\` — vytvoř ticket
|
|
139
139
|
3. \`update_ticket(number, status: "ready-to-develop")\` — předej dev agentovi
|
|
140
140
|
4. Po implementaci: \`get_ticket(number)\` → review s teamem → \`add_comment(number, "feedback...")\`
|
|
141
|
-
5. \`update_ticket(number, status: "human-review")\` nebo vrať zpět na \`"
|
|
141
|
+
5. \`update_ticket(number, status: "human-review")\` nebo vrať zpět na \`"ready-to-develop"\`
|
|
142
142
|
|
|
143
143
|
## Pravidla
|
|
144
144
|
- **Nekóduj** — nepíšeš produkční kód, maximálně pseudokód/snippety jako referenci pro dev agenta
|
|
@@ -240,13 +240,13 @@ Máš k dispozici MCP server \`@k-system/tickr-mcp\` — používej ho pro sprá
|
|
|
240
240
|
8. \`add_comment(number, "Implementováno: ...")\` — loguj průběh
|
|
241
241
|
9. \`update_ticket(number, status: "qa-review")\` — předej QA reviewerovi
|
|
242
242
|
|
|
243
|
-
**DŮLEŽITÉ:** Auto-move z Ready to Develop → In Progress je VYPNUTÝ. Dev agent MUSÍ sám přepnout status na In Progress před zahájením práce. Monitoruj OBĚ fronty — \`ready-to-develop\` (nové úkoly) i \`in-progress\` (
|
|
243
|
+
**DŮLEŽITÉ:** Auto-move z Ready to Develop → In Progress je VYPNUTÝ. Dev agent MUSÍ sám přepnout status na In Progress před zahájením práce. Monitoruj OBĚ fronty — \`ready-to-develop\` (nové úkoly + vrácené z QA/review) i \`in-progress\` (rozpracované).
|
|
244
244
|
|
|
245
245
|
### Kdy použít MCP nástroje
|
|
246
246
|
|
|
247
247
|
- **\`poll_dev_queue\`** — zkontroluj zda nejsou nové úkoly v dev queue
|
|
248
248
|
- **\`list_tickets(status: "ready-to-develop")\`** — nové úkoly čekající na převzetí
|
|
249
|
-
- **\`list_tickets(status: "in-progress")\`** —
|
|
249
|
+
- **\`list_tickets(status: "in-progress")\`** — rozpracované tickety (dev právě implementuje)
|
|
250
250
|
- **\`get_ticket\`** — vždy si přečti ticket PŘED implementací
|
|
251
251
|
- **\`add_comment\`** — hlášení problémů, otázek, progress updates
|
|
252
252
|
- **\`update_implementation_item\`** — po dokončení každého itemu
|
|
@@ -299,7 +299,7 @@ Po dokončení implementace propoj ticket s aktuálním release:
|
|
|
299
299
|
function agentQaReviewerTemplate() {
|
|
300
300
|
return `---
|
|
301
301
|
name: qa-reviewer
|
|
302
|
-
description: Tickr QA Reviewer — kontroluje kvalitu kódu z více aspektů (výkon, security, UX), ověřuje build, řídí lifecycle QA Review→Analytic Review nebo vrací do
|
|
302
|
+
description: Tickr QA Reviewer — kontroluje kvalitu kódu z více aspektů (výkon, security, UX), ověřuje build, řídí lifecycle QA Review→Analytic Review nebo vrací do Ready to Develop
|
|
303
303
|
tools: Read, Bash, Grep, Glob, Agent, mcp__tickr__*
|
|
304
304
|
model: opus
|
|
305
305
|
---
|
|
@@ -323,7 +323,7 @@ Tvoje hlavní odpovědnosti:
|
|
|
323
323
|
## Lifecycle oprávnění (BMAD Pipeline)
|
|
324
324
|
Smíš přepínat POUZE tyto statusy:
|
|
325
325
|
- QA Review → Analytic Review (kód prošel QA, pokračuje k analytikovi)
|
|
326
|
-
- QA Review →
|
|
326
|
+
- QA Review → Ready to Develop (vrácení dev agentovi — nalezeny problémy)
|
|
327
327
|
|
|
328
328
|
**NIKDY** nepřepínej:
|
|
329
329
|
- Planning → Ready to Develop (to je práce analytika)
|
|
@@ -366,7 +366,7 @@ Pro menší review (1-2 soubory) stačí single-agent review bez teamu.
|
|
|
366
366
|
|
|
367
367
|
**PŘED zahájením review zkontroluj** že ticket má komentář s build logem od developera.
|
|
368
368
|
Hledej komentář obsahující "Build log:" s výsledky \\\`dotnet build\\\`, \\\`npm run build\\\`, \\\`dotnet test\\\`.
|
|
369
|
-
Pokud build log komentář **CHYBÍ** → **OKAMŽITĚ vrátit** do
|
|
369
|
+
Pokud build log komentář **CHYBÍ** → **OKAMŽITĚ vrátit** do Ready to Develop s komentářem:
|
|
370
370
|
\\\`\\\`\\\`
|
|
371
371
|
"Vráceno — chybí povinný build log komentář. Developer musí přidat výsledky build + test před QA review."
|
|
372
372
|
\\\`\\\`\\\`
|
|
@@ -374,10 +374,10 @@ Pokud build log komentář **CHYBÍ** → **OKAMŽITĚ vrátit** do In Progress
|
|
|
374
374
|
## Co kontroluješ
|
|
375
375
|
|
|
376
376
|
### 1. Build & Compile
|
|
377
|
-
Build musí projít bez chyb. Pokud build selže → komentář s chybou → vrátit do
|
|
377
|
+
Build musí projít bez chyb. Pokud build selže → komentář s chybou → vrátit do Ready to Develop.
|
|
378
378
|
|
|
379
379
|
### 2. Testy
|
|
380
|
-
Všechny testy musí procházet. Pokud testy selžou → komentář → vrátit do
|
|
380
|
+
Všechny testy musí procházet. Pokud testy selžou → komentář → vrátit do Ready to Develop.
|
|
381
381
|
|
|
382
382
|
### 3. UI pokrytí — KRITICKÁ KONTROLA
|
|
383
383
|
Pro KAŽDOU implementovanou funkci ověř:
|
|
@@ -422,7 +422,7 @@ Pro KAŽDOU implementovanou funkci ověř:
|
|
|
422
422
|
5. **Pro větší review:** sestav team (perf + security + UX + opponent)
|
|
423
423
|
6. **Pro menší review:** projdi checklist sám
|
|
424
424
|
7. **Pokud OK:** \`add_comment\` + \`update_ticket(status: "analytic-review")\`
|
|
425
|
-
8. **Pokud NOT OK:** \`add_comment\` + \`update_ticket(status: "
|
|
425
|
+
8. **Pokud NOT OK:** \`add_comment\` + \`update_ticket(status: "ready-to-develop")\`
|
|
426
426
|
|
|
427
427
|
### Formát QA komentáře
|
|
428
428
|
|
|
@@ -474,7 +474,7 @@ Pro KAŽDOU implementovanou funkci ověř:
|
|
|
474
474
|
function agentAnalyticReviewerTemplate() {
|
|
475
475
|
return `---
|
|
476
476
|
name: analytic-reviewer
|
|
477
|
-
description: Tickr Analytic Reviewer — kontroluje implementaci z analytického pohledu, řídí lifecycle Analytic Review→Human Review nebo vrací do
|
|
477
|
+
description: Tickr Analytic Reviewer — kontroluje implementaci z analytického pohledu, řídí lifecycle Analytic Review→Human Review nebo vrací do Ready to Develop
|
|
478
478
|
tools: Read, Bash, Grep, Glob, Agent, mcp__tickr__*
|
|
479
479
|
model: opus
|
|
480
480
|
---
|
|
@@ -495,7 +495,7 @@ Tvoje hlavní odpovědnosti:
|
|
|
495
495
|
## Lifecycle oprávnění (BMAD Pipeline)
|
|
496
496
|
Smíš přepínat POUZE tyto statusy:
|
|
497
497
|
- Analytic Review → Human Review (review schválen, pokračuje k člověku)
|
|
498
|
-
- Analytic Review →
|
|
498
|
+
- Analytic Review → Ready to Develop (vrácení dev agentovi k přepracování)
|
|
499
499
|
|
|
500
500
|
**NIKDY** nepřepínej:
|
|
501
501
|
- Planning → Ready to Develop (to je práce analytika)
|
|
@@ -543,7 +543,7 @@ Projekt je definovaný v CLAUDE.md sekci "Agent Project Context" → pole \`Tick
|
|
|
543
543
|
5. **Pokud poll prázdný — zkontroluj fronty dle role:**
|
|
544
544
|
- **Developer:**
|
|
545
545
|
- \`list_tickets(project, status: "ready-to-develop")\` — nové úkoly k převzetí
|
|
546
|
-
- \`list_tickets(project, status: "in-progress")\` —
|
|
546
|
+
- \`list_tickets(project, status: "in-progress")\` — rozpracované (dev právě implementuje)
|
|
547
547
|
- **Reviewer:** \`list_tickets(project, status: "qa-review")\`
|
|
548
548
|
- **Analyst:** \`list_tickets(project, status: "analytic-review")\`
|
|
549
549
|
- Pokud nalezeny → nabídni zpracování
|
|
@@ -553,7 +553,7 @@ Projekt je definovaný v CLAUDE.md sekci "Agent Project Context" → pole \`Tick
|
|
|
553
553
|
## Důležité pro Developera
|
|
554
554
|
- Auto-move z Ready to Develop → In Progress je **VYPNUTÝ**
|
|
555
555
|
- Developer MUSÍ sám přepnout status: \`update_ticket(number, status: "in-progress")\`
|
|
556
|
-
- Monitoruj OBĚ fronty: \`ready-to-develop\` (nové) + \`in-progress\` (
|
|
556
|
+
- Monitoruj OBĚ fronty: \`ready-to-develop\` (nové + vrácené z review) + \`in-progress\` (rozpracované)
|
|
557
557
|
|
|
558
558
|
## Poznámky
|
|
559
559
|
- Tento skill funguje pro VŠECHNY agent role (developer, qa-reviewer, analyst)
|
|
@@ -659,8 +659,88 @@ const AGENT_LABELS = {
|
|
|
659
659
|
"qa-reviewer": "QA Reviewer",
|
|
660
660
|
"analytic-reviewer": "Analytic Reviewer",
|
|
661
661
|
};
|
|
662
|
+
// --- Mapování rolí → názvy souborů a templates ---
|
|
663
|
+
const agentTemplates = {
|
|
664
|
+
analyst: agentAnalyticTemplate,
|
|
665
|
+
"dev-lead": agentDevLeadTemplate,
|
|
666
|
+
"qa-reviewer": agentQaReviewerTemplate,
|
|
667
|
+
"analytic-reviewer": agentAnalyticReviewerTemplate,
|
|
668
|
+
};
|
|
669
|
+
const agentFileNames = {
|
|
670
|
+
analyst: "analytic.md",
|
|
671
|
+
"dev-lead": "dev-lead.md",
|
|
672
|
+
"qa-reviewer": "qa-reviewer.md",
|
|
673
|
+
"analytic-reviewer": "analytic-reviewer.md",
|
|
674
|
+
};
|
|
675
|
+
// --- Update-only režim: přepíše templates, skills a CMD bez dotazu na tokeny ---
|
|
676
|
+
async function setupUpdateOnly() {
|
|
677
|
+
const cwd = process.cwd();
|
|
678
|
+
const claudeDir = join(cwd, ".claude");
|
|
679
|
+
const configsDir = join(claudeDir, "configs");
|
|
680
|
+
console.log("");
|
|
681
|
+
console.log(" Tickr MCP Setup — Update Only");
|
|
682
|
+
console.log(" ------------------------------");
|
|
683
|
+
console.log("");
|
|
684
|
+
// Detekce existujících agentů z .claude/configs/
|
|
685
|
+
const detectedAgents = [];
|
|
686
|
+
for (const role of AGENT_ROLES) {
|
|
687
|
+
const agentName = agentFileNames[role].replace(".md", "");
|
|
688
|
+
const configFile = join(configsDir, agentName, ".claude.json");
|
|
689
|
+
if (existsSync(configFile)) {
|
|
690
|
+
detectedAgents.push(role);
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
if (detectedAgents.length === 0) {
|
|
694
|
+
console.log(" Žádné existující agent konfigurace nenalezeny v .claude/configs/.");
|
|
695
|
+
console.log(" Spusť setup bez --update-only pro prvotní konfiguraci.");
|
|
696
|
+
return;
|
|
697
|
+
}
|
|
698
|
+
console.log(` Nalezeni agenti: ${detectedAgents.map((r) => AGENT_LABELS[r]).join(", ")}`);
|
|
699
|
+
console.log("");
|
|
700
|
+
// Přepis agent MD souborů
|
|
701
|
+
console.log(" Aktualizuji agent templates...");
|
|
702
|
+
for (const role of detectedAgents) {
|
|
703
|
+
const agentPath = join(claudeDir, "agents", agentFileNames[role]);
|
|
704
|
+
writeFile(agentPath, agentTemplates[role]());
|
|
705
|
+
console.log(` .claude/agents/${agentFileNames[role]}`);
|
|
706
|
+
}
|
|
707
|
+
// Přepis skills
|
|
708
|
+
console.log("");
|
|
709
|
+
console.log(" Aktualizuji skills...");
|
|
710
|
+
const skillsDir = join(claudeDir, "skills");
|
|
711
|
+
const checkQueuePath = join(skillsDir, "check-queue", "SKILL.md");
|
|
712
|
+
writeFile(checkQueuePath, skillCheckQueueTemplate());
|
|
713
|
+
console.log(" .claude/skills/check-queue/SKILL.md");
|
|
714
|
+
const stopAgentPath = join(skillsDir, "stop-agent", "SKILL.md");
|
|
715
|
+
writeFile(stopAgentPath, skillStopAgentTemplate());
|
|
716
|
+
console.log(" .claude/skills/stop-agent/SKILL.md");
|
|
717
|
+
// Regenerace CMD souborů
|
|
718
|
+
console.log("");
|
|
719
|
+
console.log(" Regeneruji start skripty...");
|
|
720
|
+
for (const role of detectedAgents) {
|
|
721
|
+
const agentName = agentFileNames[role].replace(".md", "");
|
|
722
|
+
const cmdContent = `@echo off\r\nset CLAUDE_CONFIG_DIR=${cwd}\\.claude\\configs\\${agentName}\r\nset CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1\r\ncd /d ${cwd}\r\nclaude --teammate-mode in-process --dangerously-skip-permissions --append-system-prompt-file "${cwd}\\.claude\\agents\\${agentName}.md"\r\n`;
|
|
723
|
+
const cmdPath = join(cwd, `start-${agentName}.cmd`);
|
|
724
|
+
writeFileSync(cmdPath, cmdContent, "utf-8");
|
|
725
|
+
console.log(` start-${agentName}.cmd`);
|
|
726
|
+
}
|
|
727
|
+
// Summary
|
|
728
|
+
console.log("");
|
|
729
|
+
console.log(` ✅ Agent templates updated (${detectedAgents.length} agents)`);
|
|
730
|
+
console.log(" ✅ Skills updated");
|
|
731
|
+
console.log(" ✅ Start scripts regenerated");
|
|
732
|
+
console.log(" ℹ️ Token configs preserved (--update-only)");
|
|
733
|
+
console.log(" ℹ️ CLAUDE.md unchanged (--update-only)");
|
|
734
|
+
console.log("");
|
|
735
|
+
}
|
|
736
|
+
// --- Hlavní wizard ---
|
|
662
737
|
export default async function setup() {
|
|
663
738
|
const args = parseArgs();
|
|
739
|
+
// --update-only: přeskočí tokeny, přepíše templates + skills + CMD
|
|
740
|
+
if (args["update-only"]) {
|
|
741
|
+
await setupUpdateOnly();
|
|
742
|
+
return;
|
|
743
|
+
}
|
|
664
744
|
console.log("");
|
|
665
745
|
console.log(" Tickr MCP Setup Wizard");
|
|
666
746
|
console.log(" ----------------------");
|
|
@@ -777,19 +857,6 @@ export default async function setup() {
|
|
|
777
857
|
console.log("");
|
|
778
858
|
console.log(" Generuji soubory...");
|
|
779
859
|
console.log("");
|
|
780
|
-
// Agent definice
|
|
781
|
-
const agentTemplates = {
|
|
782
|
-
analyst: agentAnalyticTemplate,
|
|
783
|
-
"dev-lead": agentDevLeadTemplate,
|
|
784
|
-
"qa-reviewer": agentQaReviewerTemplate,
|
|
785
|
-
"analytic-reviewer": agentAnalyticReviewerTemplate,
|
|
786
|
-
};
|
|
787
|
-
const agentFileNames = {
|
|
788
|
-
analyst: "analytic.md",
|
|
789
|
-
"dev-lead": "dev-lead.md",
|
|
790
|
-
"qa-reviewer": "qa-reviewer.md",
|
|
791
|
-
"analytic-reviewer": "analytic-reviewer.md",
|
|
792
|
-
};
|
|
793
860
|
for (const agent of agents) {
|
|
794
861
|
// Agent markdown
|
|
795
862
|
const agentPath = join(claudeDir, "agents", agentFileNames[agent.role]);
|
package/dist/cli/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -96,83 +96,25 @@ export async function startServer() {
|
|
|
96
96
|
name: "tickr",
|
|
97
97
|
version: "0.1.5",
|
|
98
98
|
});
|
|
99
|
-
//
|
|
100
|
-
const MUTATING_PREFIXES = ["create_", "add_", "triage_accept", "triage_reject"];
|
|
101
|
-
const dedupCache = new Map();
|
|
102
|
-
const pendingOps = new Map();
|
|
103
|
-
const DEDUP_TTL_MS = 30_000; // 30 sekund
|
|
104
|
-
// Obalení server.tool — dedup cache (vždy) + debug logging (volitelné)
|
|
99
|
+
// Debug logging wrapper — dedup řeší API server (Serializable transakce)
|
|
105
100
|
{
|
|
106
101
|
const debug = isDebugEnabled();
|
|
107
102
|
const originalTool = server.tool.bind(server);
|
|
108
103
|
const wrappedTool = function (...args) {
|
|
104
|
+
if (!debug)
|
|
105
|
+
return originalTool.apply(server, args);
|
|
109
106
|
const handlerIndex = args.length - 1;
|
|
110
107
|
const name = args[0];
|
|
111
108
|
const originalHandler = args[handlerIndex];
|
|
112
|
-
const isMutating = MUTATING_PREFIXES.some((p) => name.startsWith(p));
|
|
113
109
|
args[handlerIndex] = async (params, extra) => {
|
|
114
|
-
// Dedup pro mutující operace
|
|
115
|
-
if (isMutating) {
|
|
116
|
-
const hash = name + ":" + JSON.stringify(params);
|
|
117
|
-
// 1. Check completed cache
|
|
118
|
-
const cached = dedupCache.get(hash);
|
|
119
|
-
if (cached && Date.now() - cached.timestamp < DEDUP_TTL_MS) {
|
|
120
|
-
if (debug)
|
|
121
|
-
debugLog(name, (params ?? {}), "dedup-cached", 0);
|
|
122
|
-
return cached.result;
|
|
123
|
-
}
|
|
124
|
-
// 2. Check if another call with same params is already in-flight
|
|
125
|
-
const pending = pendingOps.get(hash);
|
|
126
|
-
if (pending) {
|
|
127
|
-
if (debug)
|
|
128
|
-
debugLog(name, (params ?? {}), "dedup-pending", 0);
|
|
129
|
-
return pending;
|
|
130
|
-
}
|
|
131
|
-
// 3. Mark as pending BEFORE starting async work — prevents race condition
|
|
132
|
-
const promise = (async () => {
|
|
133
|
-
const start = Date.now();
|
|
134
|
-
try {
|
|
135
|
-
const result = await originalHandler(params, extra);
|
|
136
|
-
// Cache úspěšné mutující výsledky
|
|
137
|
-
if (!result.isError) {
|
|
138
|
-
dedupCache.set(hash, { result, timestamp: Date.now() });
|
|
139
|
-
if (dedupCache.size > 100) {
|
|
140
|
-
const now = Date.now();
|
|
141
|
-
for (const [k, v] of dedupCache) {
|
|
142
|
-
if (now - v.timestamp > DEDUP_TTL_MS)
|
|
143
|
-
dedupCache.delete(k);
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
if (debug)
|
|
148
|
-
debugLog(name, (params ?? {}), result.isError ? "error" : "ok", Date.now() - start);
|
|
149
|
-
return result;
|
|
150
|
-
}
|
|
151
|
-
catch (err) {
|
|
152
|
-
if (debug)
|
|
153
|
-
debugLog(name, (params ?? {}), "error", Date.now() - start);
|
|
154
|
-
throw err;
|
|
155
|
-
}
|
|
156
|
-
})();
|
|
157
|
-
pendingOps.set(hash, promise);
|
|
158
|
-
try {
|
|
159
|
-
return await promise;
|
|
160
|
-
}
|
|
161
|
-
finally {
|
|
162
|
-
pendingOps.delete(hash);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
// Non-mutating operace — bez dedup
|
|
166
110
|
const start = Date.now();
|
|
167
111
|
try {
|
|
168
112
|
const result = await originalHandler(params, extra);
|
|
169
|
-
|
|
170
|
-
debugLog(name, (params ?? {}), result.isError ? "error" : "ok", Date.now() - start);
|
|
113
|
+
debugLog(name, (params ?? {}), result.isError ? "error" : "ok", Date.now() - start);
|
|
171
114
|
return result;
|
|
172
115
|
}
|
|
173
116
|
catch (err) {
|
|
174
|
-
|
|
175
|
-
debugLog(name, (params ?? {}), "error", Date.now() - start);
|
|
117
|
+
debugLog(name, (params ?? {}), "error", Date.now() - start);
|
|
176
118
|
throw err;
|
|
177
119
|
}
|
|
178
120
|
};
|