@andrebuzeli/git-mcp 2.6.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.
Files changed (122) hide show
  1. package/README.md +346 -0
  2. package/dist/client.d.ts +307 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +299 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/config.d.ts +299 -0
  7. package/dist/config.d.ts.map +1 -0
  8. package/dist/config.js +381 -0
  9. package/dist/config.js.map +1 -0
  10. package/dist/index.d.ts +22 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +53 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/providers/base-provider.d.ts +139 -0
  15. package/dist/providers/base-provider.d.ts.map +1 -0
  16. package/dist/providers/base-provider.js +246 -0
  17. package/dist/providers/base-provider.js.map +1 -0
  18. package/dist/providers/error-handler.d.ts +51 -0
  19. package/dist/providers/error-handler.d.ts.map +1 -0
  20. package/dist/providers/error-handler.js +170 -0
  21. package/dist/providers/error-handler.js.map +1 -0
  22. package/dist/providers/gitea-provider.d.ts +68 -0
  23. package/dist/providers/gitea-provider.d.ts.map +1 -0
  24. package/dist/providers/gitea-provider.js +515 -0
  25. package/dist/providers/gitea-provider.js.map +1 -0
  26. package/dist/providers/github-provider.d.ts +68 -0
  27. package/dist/providers/github-provider.d.ts.map +1 -0
  28. package/dist/providers/github-provider.js +518 -0
  29. package/dist/providers/github-provider.js.map +1 -0
  30. package/dist/providers/index.d.ts +13 -0
  31. package/dist/providers/index.d.ts.map +1 -0
  32. package/dist/providers/index.js +41 -0
  33. package/dist/providers/index.js.map +1 -0
  34. package/dist/providers/provider-factory.d.ts +75 -0
  35. package/dist/providers/provider-factory.d.ts.map +1 -0
  36. package/dist/providers/provider-factory.js +298 -0
  37. package/dist/providers/provider-factory.js.map +1 -0
  38. package/dist/providers/types.d.ts +276 -0
  39. package/dist/providers/types.d.ts.map +1 -0
  40. package/dist/providers/types.js +7 -0
  41. package/dist/providers/types.js.map +1 -0
  42. package/dist/server.d.ts +77 -0
  43. package/dist/server.d.ts.map +1 -0
  44. package/dist/server.js +262 -0
  45. package/dist/server.js.map +1 -0
  46. package/dist/tools/actions.d.ts +272 -0
  47. package/dist/tools/actions.d.ts.map +1 -0
  48. package/dist/tools/actions.js +428 -0
  49. package/dist/tools/actions.js.map +1 -0
  50. package/dist/tools/analytics.d.ts +326 -0
  51. package/dist/tools/analytics.d.ts.map +1 -0
  52. package/dist/tools/analytics.js +473 -0
  53. package/dist/tools/analytics.js.map +1 -0
  54. package/dist/tools/branches.d.ts +461 -0
  55. package/dist/tools/branches.d.ts.map +1 -0
  56. package/dist/tools/branches.js +525 -0
  57. package/dist/tools/branches.js.map +1 -0
  58. package/dist/tools/code-review.d.ts +323 -0
  59. package/dist/tools/code-review.d.ts.map +1 -0
  60. package/dist/tools/code-review.js +552 -0
  61. package/dist/tools/code-review.js.map +1 -0
  62. package/dist/tools/commits.d.ts +488 -0
  63. package/dist/tools/commits.d.ts.map +1 -0
  64. package/dist/tools/commits.js +578 -0
  65. package/dist/tools/commits.js.map +1 -0
  66. package/dist/tools/deployments.d.ts +319 -0
  67. package/dist/tools/deployments.d.ts.map +1 -0
  68. package/dist/tools/deployments.js +355 -0
  69. package/dist/tools/deployments.js.map +1 -0
  70. package/dist/tools/files.d.ts +456 -0
  71. package/dist/tools/files.d.ts.map +1 -0
  72. package/dist/tools/files.js +531 -0
  73. package/dist/tools/files.js.map +1 -0
  74. package/dist/tools/git-sync.d.ts +177 -0
  75. package/dist/tools/git-sync.d.ts.map +1 -0
  76. package/dist/tools/git-sync.js +112 -0
  77. package/dist/tools/git-sync.js.map +1 -0
  78. package/dist/tools/issues.d.ts +579 -0
  79. package/dist/tools/issues.d.ts.map +1 -0
  80. package/dist/tools/issues.js +631 -0
  81. package/dist/tools/issues.js.map +1 -0
  82. package/dist/tools/pulls.d.ts +702 -0
  83. package/dist/tools/pulls.d.ts.map +1 -0
  84. package/dist/tools/pulls.js +730 -0
  85. package/dist/tools/pulls.js.map +1 -0
  86. package/dist/tools/releases.d.ts +495 -0
  87. package/dist/tools/releases.d.ts.map +1 -0
  88. package/dist/tools/releases.js +551 -0
  89. package/dist/tools/releases.js.map +1 -0
  90. package/dist/tools/repositories.d.ts +513 -0
  91. package/dist/tools/repositories.d.ts.map +1 -0
  92. package/dist/tools/repositories.js +634 -0
  93. package/dist/tools/repositories.js.map +1 -0
  94. package/dist/tools/security.d.ts +341 -0
  95. package/dist/tools/security.d.ts.map +1 -0
  96. package/dist/tools/security.js +394 -0
  97. package/dist/tools/security.js.map +1 -0
  98. package/dist/tools/tags.d.ts +419 -0
  99. package/dist/tools/tags.d.ts.map +1 -0
  100. package/dist/tools/tags.js +479 -0
  101. package/dist/tools/tags.js.map +1 -0
  102. package/dist/tools/users.d.ts +376 -0
  103. package/dist/tools/users.d.ts.map +1 -0
  104. package/dist/tools/users.js +495 -0
  105. package/dist/tools/users.js.map +1 -0
  106. package/dist/tools/validator.d.ts +192 -0
  107. package/dist/tools/validator.d.ts.map +1 -0
  108. package/dist/tools/validator.js +198 -0
  109. package/dist/tools/validator.js.map +1 -0
  110. package/dist/tools/version-control.d.ts +247 -0
  111. package/dist/tools/version-control.d.ts.map +1 -0
  112. package/dist/tools/version-control.js +521 -0
  113. package/dist/tools/version-control.js.map +1 -0
  114. package/dist/tools/webhooks.d.ts +478 -0
  115. package/dist/tools/webhooks.d.ts.map +1 -0
  116. package/dist/tools/webhooks.js +541 -0
  117. package/dist/tools/webhooks.js.map +1 -0
  118. package/dist/tools/workflows.d.ts +313 -0
  119. package/dist/tools/workflows.d.ts.map +1 -0
  120. package/dist/tools/workflows.js +430 -0
  121. package/dist/tools/workflows.js.map +1 -0
  122. package/package.json +58 -0
@@ -0,0 +1,419 @@
1
+ import { z } from 'zod';
2
+ import { VcsOperations } from '../providers/index.js';
3
+ /**
4
+ * Tool: tags
5
+ *
6
+ * DESCRIÇÃO:
7
+ * Gerenciamento completo de tags com suporte multi-provider (GitHub e Gitea)
8
+ *
9
+ * FUNCIONALIDADES:
10
+ * - Criação de novas tags
11
+ * - Listagem e busca de tags
12
+ * - Obtenção de detalhes específicos
13
+ * - Exclusão de tags
14
+ * - Controle de versão
15
+ * - Busca por padrões
16
+ *
17
+ * USO:
18
+ * - Para marcar versões específicas
19
+ * - Para controle de release
20
+ * - Para rollback de código
21
+ * - Para identificação de commits
22
+ *
23
+ * RECOMENDAÇÕES:
24
+ * - Use versionamento semântico
25
+ * - Mantenha tags organizadas
26
+ * - Documente propósito das tags
27
+ * - Use para pontos de referência
28
+ */
29
+ /**
30
+ * Schema de validação para entrada da tool tags
31
+ *
32
+ * VALIDAÇÕES:
33
+ * - action: Ação obrigatória (create, list, get, delete, search)
34
+ * - Parâmetros específicos por ação
35
+ * - Validação de tipos e formatos
36
+ *
37
+ * RECOMENDAÇÕES:
38
+ * - Sempre valide entrada antes de usar
39
+ * - Use parâmetros opcionais adequadamente
40
+ * - Documente parâmetros obrigatórios
41
+ */
42
+ declare const TagsInputSchema: z.ZodObject<{
43
+ action: z.ZodEnum<["create", "list", "get", "delete", "search"]>;
44
+ owner: z.ZodOptional<z.ZodString>;
45
+ repo: z.ZodOptional<z.ZodString>;
46
+ provider: z.ZodOptional<z.ZodEnum<["gitea", "github", "both"]>>;
47
+ tag_name: z.ZodOptional<z.ZodString>;
48
+ message: z.ZodOptional<z.ZodString>;
49
+ target: z.ZodOptional<z.ZodString>;
50
+ type: z.ZodOptional<z.ZodEnum<["lightweight", "annotated"]>>;
51
+ tagger_name: z.ZodOptional<z.ZodString>;
52
+ tagger_email: z.ZodOptional<z.ZodString>;
53
+ tag: z.ZodOptional<z.ZodString>;
54
+ page: z.ZodOptional<z.ZodNumber>;
55
+ limit: z.ZodOptional<z.ZodNumber>;
56
+ query: z.ZodOptional<z.ZodString>;
57
+ pattern: z.ZodOptional<z.ZodString>;
58
+ }, "strip", z.ZodTypeAny, {
59
+ action: "delete" | "get" | "create" | "list" | "search";
60
+ provider?: "gitea" | "github" | "both" | undefined;
61
+ message?: string | undefined;
62
+ type?: "lightweight" | "annotated" | undefined;
63
+ owner?: string | undefined;
64
+ tag_name?: string | undefined;
65
+ page?: number | undefined;
66
+ limit?: number | undefined;
67
+ repo?: string | undefined;
68
+ query?: string | undefined;
69
+ target?: string | undefined;
70
+ tagger_name?: string | undefined;
71
+ tagger_email?: string | undefined;
72
+ tag?: string | undefined;
73
+ pattern?: string | undefined;
74
+ }, {
75
+ action: "delete" | "get" | "create" | "list" | "search";
76
+ provider?: "gitea" | "github" | "both" | undefined;
77
+ message?: string | undefined;
78
+ type?: "lightweight" | "annotated" | undefined;
79
+ owner?: string | undefined;
80
+ tag_name?: string | undefined;
81
+ page?: number | undefined;
82
+ limit?: number | undefined;
83
+ repo?: string | undefined;
84
+ query?: string | undefined;
85
+ target?: string | undefined;
86
+ tagger_name?: string | undefined;
87
+ tagger_email?: string | undefined;
88
+ tag?: string | undefined;
89
+ pattern?: string | undefined;
90
+ }>;
91
+ export type TagsInput = z.infer<typeof TagsInputSchema>;
92
+ /**
93
+ * Schema de saída padronizado
94
+ *
95
+ * ESTRUTURA:
96
+ * - success: Status da operação
97
+ * - action: Ação executada
98
+ * - message: Mensagem descritiva
99
+ * - data: Dados retornados (opcional)
100
+ * - error: Detalhes do erro (opcional)
101
+ */
102
+ declare const TagsResultSchema: z.ZodObject<{
103
+ success: z.ZodBoolean;
104
+ action: z.ZodString;
105
+ message: z.ZodString;
106
+ data: z.ZodOptional<z.ZodAny>;
107
+ error: z.ZodOptional<z.ZodString>;
108
+ }, "strip", z.ZodTypeAny, {
109
+ message: string;
110
+ action: string;
111
+ success: boolean;
112
+ error?: string | undefined;
113
+ data?: any;
114
+ }, {
115
+ message: string;
116
+ action: string;
117
+ success: boolean;
118
+ error?: string | undefined;
119
+ data?: any;
120
+ }>;
121
+ export type TagsResult = z.infer<typeof TagsResultSchema>;
122
+ /**
123
+ * Tool: tags
124
+ *
125
+ * DESCRIÇÃO:
126
+ * Gerenciamento completo de tags Gitea com múltiplas ações
127
+ *
128
+ * ACTIONS DISPONÍVEIS:
129
+ *
130
+ * 1. create - Criar nova tag
131
+ * Parâmetros:
132
+ * - owner (obrigatório): Proprietário do repositório
133
+ * - repo (obrigatório): Nome do repositório
134
+ * - tag_name (obrigatório): Nome da tag
135
+ * - message (opcional): Mensagem da tag (para tags anotadas)
136
+ * - target (obrigatório): Commit, branch ou tag alvo
137
+ * - type (opcional): Tipo de tag (lightweight, annotated) - padrão: lightweight
138
+ * - tagger_name (opcional): Nome do tagger (para tags anotadas)
139
+ * - tagger_email (opcional): Email do tagger (para tags anotadas)
140
+ *
141
+ * 2. list - Listar tags
142
+ * Parâmetros:
143
+ * - owner (obrigatório): Proprietário do repositório
144
+ * - repo (obrigatório): Nome do repositório
145
+ * - page (opcional): Página da listagem (padrão: 1)
146
+ * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
147
+ *
148
+ * 3. get - Obter detalhes da tag
149
+ * Parâmetros:
150
+ * - owner (obrigatório): Proprietário do repositório
151
+ * - repo (obrigatório): Nome do repositório
152
+ * - tag (obrigatório): Nome da tag
153
+ *
154
+ * 4. delete - Deletar tag
155
+ * Parâmetros:
156
+ * - owner (obrigatório): Proprietário do repositório
157
+ * - repo (obrigatório): Nome do repositório
158
+ * - tag (obrigatório): Nome da tag
159
+ *
160
+ * 5. search - Buscar tags
161
+ * Parâmetros:
162
+ * - owner (obrigatório): Proprietário do repositório
163
+ * - repo (obrigatório): Nome do repositório
164
+ * - query (opcional): Termo de busca
165
+ * - pattern (opcional): Padrão de busca (ex: v*.*.*)
166
+ *
167
+ * RECOMENDAÇÕES DE USO:
168
+ * - Use convenções de nomenclatura consistentes
169
+ * - Documente propósito das tags
170
+ * - Mantenha tags organizadas
171
+ * - Use versionamento semântico
172
+ * - Use tags anotadas para releases importantes
173
+ * - Limpe tags antigas regularmente
174
+ */
175
+ export declare const tagsTool: {
176
+ name: string;
177
+ description: string;
178
+ inputSchema: {
179
+ type: string;
180
+ properties: {
181
+ action: {
182
+ type: string;
183
+ enum: string[];
184
+ description: string;
185
+ };
186
+ owner: {
187
+ type: string;
188
+ description: string;
189
+ };
190
+ repo: {
191
+ type: string;
192
+ description: string;
193
+ };
194
+ provider: {
195
+ type: string;
196
+ description: string;
197
+ };
198
+ tag_name: {
199
+ type: string;
200
+ description: string;
201
+ };
202
+ message: {
203
+ type: string;
204
+ description: string;
205
+ };
206
+ target: {
207
+ type: string;
208
+ description: string;
209
+ };
210
+ type: {
211
+ type: string;
212
+ enum: string[];
213
+ description: string;
214
+ };
215
+ tagger_name: {
216
+ type: string;
217
+ description: string;
218
+ };
219
+ tagger_email: {
220
+ type: string;
221
+ description: string;
222
+ };
223
+ tag: {
224
+ type: string;
225
+ description: string;
226
+ };
227
+ page: {
228
+ type: string;
229
+ description: string;
230
+ minimum: number;
231
+ };
232
+ limit: {
233
+ type: string;
234
+ description: string;
235
+ minimum: number;
236
+ maximum: number;
237
+ };
238
+ query: {
239
+ type: string;
240
+ description: string;
241
+ };
242
+ pattern: {
243
+ type: string;
244
+ description: string;
245
+ };
246
+ };
247
+ required: string[];
248
+ };
249
+ /**
250
+ * Handler principal da tool tags
251
+ *
252
+ * FUNCIONALIDADE:
253
+ * - Valida entrada usando Zod schema
254
+ * - Roteia para método específico baseado na ação
255
+ * - Trata erros de forma uniforme
256
+ * - Retorna resultado padronizado
257
+ *
258
+ * FLUXO:
259
+ * 1. Validação de entrada
260
+ * 2. Seleção do provider
261
+ * 3. Roteamento por ação
262
+ * 4. Execução do método específico
263
+ * 5. Tratamento de erros
264
+ * 6. Retorno de resultado
265
+ *
266
+ * TRATAMENTO DE ERROS:
267
+ * - Validação: erro de schema
268
+ * - Execução: erro da operação
269
+ * - Roteamento: ação não suportada
270
+ *
271
+ * RECOMENDAÇÕES:
272
+ * - Sempre valide entrada antes de processar
273
+ * - Trate erros específicos adequadamente
274
+ * - Log detalhes de erro para debug
275
+ * - Retorne mensagens de erro úteis
276
+ */
277
+ handler(input: TagsInput): Promise<TagsResult>;
278
+ /**
279
+ * Cria uma nova tag no repositório
280
+ *
281
+ * FUNCIONALIDADE:
282
+ * - Cria tag com nome e target especificados
283
+ * - Suporta tags lightweight e anotadas
284
+ * - Permite configuração de tagger
285
+ *
286
+ * PARÂMETROS OBRIGATÓRIOS:
287
+ * - owner: Proprietário do repositório
288
+ * - repo: Nome do repositório
289
+ * - tag_name: Nome da tag
290
+ * - target: Commit, branch ou tag alvo
291
+ *
292
+ * PARÂMETROS OPCIONAIS:
293
+ * - message: Mensagem da tag (para tags anotadas)
294
+ * - type: Tipo de tag (lightweight, annotated) - padrão: lightweight
295
+ * - tagger_name: Nome do tagger (para tags anotadas)
296
+ * - tagger_email: Email do tagger (para tags anotadas)
297
+ *
298
+ * VALIDAÇÕES:
299
+ * - Todos os parâmetros obrigatórios
300
+ * - Nome da tag deve ser único no repositório
301
+ * - Target deve existir
302
+ * - Usuário deve ter permissão de escrita
303
+ *
304
+ * RECOMENDAÇÕES:
305
+ * - Use convenções de nomenclatura consistentes
306
+ * - Use tags anotadas para releases importantes
307
+ * - Documente propósito da tag
308
+ * - Use versionamento semântico
309
+ */
310
+ createTag(params: TagsInput, provider: VcsOperations): Promise<TagsResult>;
311
+ /**
312
+ * Lista tags do repositório
313
+ *
314
+ * FUNCIONALIDADE:
315
+ * - Lista tags com paginação
316
+ * - Retorna informações básicas de cada tag
317
+ * - Inclui commit alvo e URLs de download
318
+ *
319
+ * PARÂMETROS OBRIGATÓRIOS:
320
+ * - owner: Proprietário do repositório
321
+ * - repo: Nome do repositório
322
+ *
323
+ * PARÂMETROS OPCIONAIS:
324
+ * - page: Página da listagem (padrão: 1)
325
+ * - limit: Itens por página (padrão: 30, máximo: 100)
326
+ *
327
+ * VALIDAÇÕES:
328
+ * - Owner e repo obrigatórios
329
+ * - Page deve ser >= 1
330
+ * - Limit deve ser entre 1 e 100
331
+ *
332
+ * RECOMENDAÇÕES:
333
+ * - Use paginação para repositórios com muitas tags
334
+ * - Monitore número total de tags
335
+ * - Verifique commit alvo de cada tag
336
+ * - Mantenha tags organizadas
337
+ */
338
+ listTags(params: TagsInput, provider: VcsOperations): Promise<TagsResult>;
339
+ /**
340
+ * Obtém detalhes de uma tag específica
341
+ *
342
+ * FUNCIONALIDADE:
343
+ * - Retorna informações completas da tag
344
+ * - Inclui nome, commit alvo e URLs
345
+ * - Mostra tipo da tag (lightweight/anotada)
346
+ *
347
+ * PARÂMETROS OBRIGATÓRIOS:
348
+ * - owner: Proprietário do repositório
349
+ * - repo: Nome do repositório
350
+ * - tag: Nome da tag
351
+ *
352
+ * VALIDAÇÕES:
353
+ * - Todos os parâmetros obrigatórios
354
+ * - Tag deve existir no repositório
355
+ * - Nome deve ser válido
356
+ *
357
+ * RECOMENDAÇÕES:
358
+ * - Use para obter detalhes completos
359
+ * - Verifique commit alvo da tag
360
+ * - Analise URLs de download
361
+ * - Monitore mudanças importantes
362
+ */
363
+ getTag(params: TagsInput, provider: VcsOperations): Promise<TagsResult>;
364
+ /**
365
+ * Deleta uma tag do repositório
366
+ *
367
+ * FUNCIONALIDADE:
368
+ * - Remove tag especificada
369
+ * - Mantém commit alvo intacto
370
+ * - Confirma exclusão bem-sucedida
371
+ *
372
+ * PARÂMETROS OBRIGATÓRIOS:
373
+ * - owner: Proprietário do repositório
374
+ * - repo: Nome do repositório
375
+ * - tag: Nome da tag
376
+ *
377
+ * VALIDAÇÕES:
378
+ * - Todos os parâmetros obrigatórios
379
+ * - Tag deve existir
380
+ * - Usuário deve ter permissão de exclusão
381
+ *
382
+ * RECOMENDAÇÕES:
383
+ * - Confirme exclusão antes de executar
384
+ * - Verifique se tag não está sendo usada
385
+ * - Mantenha backup se necessário
386
+ * - Documente motivo da exclusão
387
+ */
388
+ deleteTag(params: TagsInput, provider: VcsOperations): Promise<TagsResult>;
389
+ /**
390
+ * Busca tags por critérios específicos
391
+ *
392
+ * FUNCIONALIDADE:
393
+ * - Busca tags por nome ou padrão
394
+ * - Suporta padrões glob (ex: v*.*.*)
395
+ * - Retorna resultados relevantes
396
+ *
397
+ * PARÂMETROS OBRIGATÓRIOS:
398
+ * - owner: Proprietário do repositório
399
+ * - repo: Nome do repositório
400
+ *
401
+ * PARÂMETROS OPCIONAIS:
402
+ * - query: Termo de busca
403
+ * - pattern: Padrão de busca (ex: v*.*.*)
404
+ *
405
+ * VALIDAÇÕES:
406
+ * - Owner e repo obrigatórios
407
+ * - Query ou pattern deve ser fornecido
408
+ * - Repositório deve existir
409
+ *
410
+ * RECOMENDAÇÕES:
411
+ * - Use padrões glob para busca eficiente
412
+ * - Combine com filtros de nome
413
+ * - Analise resultados para relevância
414
+ * - Use para encontrar tags relacionadas
415
+ */
416
+ searchTags(params: TagsInput, provider: VcsOperations): Promise<TagsResult>;
417
+ };
418
+ export {};
419
+ //# sourceMappingURL=tags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tags.d.ts","sourceRoot":"","sources":["../../src/tools/tags.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAyB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BnB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;;;;;GASG;AACH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;EAMpB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6BnB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;mBACkB,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAqCpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;sBACqB,SAAS,YAAY,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IA8BhF;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;qBACoB,SAAS,YAAY,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IA2B/E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;mBACkB,SAAS,YAAY,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IAsB7E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;sBACqB,SAAS,YAAY,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IAmBhF;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;uBACsB,SAAS,YAAY,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;CA0BlF,CAAC"}