@ruvector/ruvllm 2.7.0 → 4.0.0

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 (151) hide show
  1. package/GPU-LOOP.md +229 -0
  2. package/LICENSE +201 -0
  3. package/NOTICE +9 -0
  4. package/README.md +157 -263
  5. package/examples/gpu-loop.example.json +26 -0
  6. package/package.json +50 -120
  7. package/src/adapters-cli.mjs +23 -0
  8. package/src/adapters.mjs +91 -0
  9. package/src/cli.mjs +30 -0
  10. package/src/engine.mjs +238 -0
  11. package/src/fixture.mjs +38 -0
  12. package/src/gpu-host.mjs +47 -0
  13. package/src/gpu-loop-cli.mjs +67 -0
  14. package/src/gpu-loop.mjs +184 -0
  15. package/src/gpu-spool-adapter.mjs +80 -0
  16. package/src/vast-host-adapter.mjs +274 -0
  17. package/bin/cli.js +0 -1020
  18. package/dist/cjs/benchmarks/embedding-benchmark.d.ts +0 -102
  19. package/dist/cjs/benchmarks/embedding-benchmark.d.ts.map +0 -1
  20. package/dist/cjs/benchmarks/embedding-benchmark.js +0 -436
  21. package/dist/cjs/benchmarks/index.d.ts +0 -34
  22. package/dist/cjs/benchmarks/index.d.ts.map +0 -1
  23. package/dist/cjs/benchmarks/index.js +0 -132
  24. package/dist/cjs/benchmarks/model-comparison.d.ts +0 -71
  25. package/dist/cjs/benchmarks/model-comparison.d.ts.map +0 -1
  26. package/dist/cjs/benchmarks/model-comparison.js +0 -476
  27. package/dist/cjs/benchmarks/routing-benchmark.d.ts +0 -70
  28. package/dist/cjs/benchmarks/routing-benchmark.d.ts.map +0 -1
  29. package/dist/cjs/benchmarks/routing-benchmark.js +0 -289
  30. package/dist/cjs/contrastive.d.ts +0 -229
  31. package/dist/cjs/contrastive.d.ts.map +0 -1
  32. package/dist/cjs/contrastive.js +0 -589
  33. package/dist/cjs/engine.d.ts +0 -95
  34. package/dist/cjs/engine.d.ts.map +0 -1
  35. package/dist/cjs/engine.js +0 -372
  36. package/dist/cjs/export.d.ts +0 -182
  37. package/dist/cjs/export.d.ts.map +0 -1
  38. package/dist/cjs/export.js +0 -422
  39. package/dist/cjs/federated.d.ts +0 -233
  40. package/dist/cjs/federated.d.ts.map +0 -1
  41. package/dist/cjs/federated.js +0 -525
  42. package/dist/cjs/index.d.ts +0 -68
  43. package/dist/cjs/index.d.ts.map +0 -1
  44. package/dist/cjs/index.js +0 -104
  45. package/dist/cjs/intelligence.d.ts +0 -136
  46. package/dist/cjs/intelligence.d.ts.map +0 -1
  47. package/dist/cjs/intelligence.js +0 -226
  48. package/dist/cjs/lora.d.ts +0 -251
  49. package/dist/cjs/lora.d.ts.map +0 -1
  50. package/dist/cjs/lora.js +0 -509
  51. package/dist/cjs/models.d.ts +0 -129
  52. package/dist/cjs/models.d.ts.map +0 -1
  53. package/dist/cjs/models.js +0 -323
  54. package/dist/cjs/native.d.ts +0 -92
  55. package/dist/cjs/native.d.ts.map +0 -1
  56. package/dist/cjs/native.js +0 -77
  57. package/dist/cjs/session.d.ts +0 -80
  58. package/dist/cjs/session.d.ts.map +0 -1
  59. package/dist/cjs/session.js +0 -203
  60. package/dist/cjs/simd.d.ts +0 -90
  61. package/dist/cjs/simd.d.ts.map +0 -1
  62. package/dist/cjs/simd.js +0 -209
  63. package/dist/cjs/sona.d.ts +0 -223
  64. package/dist/cjs/sona.d.ts.map +0 -1
  65. package/dist/cjs/sona.js +0 -562
  66. package/dist/cjs/streaming.d.ts +0 -55
  67. package/dist/cjs/streaming.d.ts.map +0 -1
  68. package/dist/cjs/streaming.js +0 -131
  69. package/dist/cjs/training.d.ts +0 -312
  70. package/dist/cjs/training.d.ts.map +0 -1
  71. package/dist/cjs/training.js +0 -610
  72. package/dist/cjs/types.d.ts +0 -615
  73. package/dist/cjs/types.d.ts.map +0 -1
  74. package/dist/cjs/types.js +0 -6
  75. package/dist/esm/benchmarks/embedding-benchmark.d.ts +0 -102
  76. package/dist/esm/benchmarks/embedding-benchmark.d.ts.map +0 -1
  77. package/dist/esm/benchmarks/embedding-benchmark.js +0 -427
  78. package/dist/esm/benchmarks/index.d.ts +0 -34
  79. package/dist/esm/benchmarks/index.d.ts.map +0 -1
  80. package/dist/esm/benchmarks/index.js +0 -110
  81. package/dist/esm/benchmarks/model-comparison.d.ts +0 -71
  82. package/dist/esm/benchmarks/model-comparison.d.ts.map +0 -1
  83. package/dist/esm/benchmarks/model-comparison.js +0 -434
  84. package/dist/esm/benchmarks/routing-benchmark.d.ts +0 -70
  85. package/dist/esm/benchmarks/routing-benchmark.d.ts.map +0 -1
  86. package/dist/esm/benchmarks/routing-benchmark.js +0 -283
  87. package/dist/esm/contrastive.d.ts +0 -229
  88. package/dist/esm/contrastive.d.ts.map +0 -1
  89. package/dist/esm/contrastive.js +0 -578
  90. package/dist/esm/engine.d.ts +0 -95
  91. package/dist/esm/engine.d.ts.map +0 -1
  92. package/dist/esm/engine.js +0 -368
  93. package/dist/esm/export.d.ts +0 -182
  94. package/dist/esm/export.d.ts.map +0 -1
  95. package/dist/esm/export.js +0 -414
  96. package/dist/esm/federated.d.ts +0 -233
  97. package/dist/esm/federated.d.ts.map +0 -1
  98. package/dist/esm/federated.js +0 -520
  99. package/dist/esm/index.d.ts +0 -68
  100. package/dist/esm/index.d.ts.map +0 -1
  101. package/dist/esm/index.js +0 -84
  102. package/dist/esm/intelligence.d.ts +0 -136
  103. package/dist/esm/intelligence.d.ts.map +0 -1
  104. package/dist/esm/intelligence.js +0 -188
  105. package/dist/esm/lora.d.ts +0 -251
  106. package/dist/esm/lora.d.ts.map +0 -1
  107. package/dist/esm/lora.js +0 -504
  108. package/dist/esm/models.d.ts +0 -129
  109. package/dist/esm/models.d.ts.map +0 -1
  110. package/dist/esm/models.js +0 -282
  111. package/dist/esm/native.d.ts +0 -92
  112. package/dist/esm/native.d.ts.map +0 -1
  113. package/dist/esm/native.js +0 -72
  114. package/dist/esm/session.d.ts +0 -80
  115. package/dist/esm/session.d.ts.map +0 -1
  116. package/dist/esm/session.js +0 -199
  117. package/dist/esm/simd.d.ts +0 -90
  118. package/dist/esm/simd.d.ts.map +0 -1
  119. package/dist/esm/simd.js +0 -205
  120. package/dist/esm/sona.d.ts +0 -223
  121. package/dist/esm/sona.d.ts.map +0 -1
  122. package/dist/esm/sona.js +0 -556
  123. package/dist/esm/streaming.d.ts +0 -55
  124. package/dist/esm/streaming.d.ts.map +0 -1
  125. package/dist/esm/streaming.js +0 -126
  126. package/dist/esm/training.d.ts +0 -312
  127. package/dist/esm/training.d.ts.map +0 -1
  128. package/dist/esm/training.js +0 -603
  129. package/dist/esm/types.d.ts +0 -615
  130. package/dist/esm/types.d.ts.map +0 -1
  131. package/dist/esm/types.js +0 -5
  132. package/scripts/ensemble-model-compare.js +0 -287
  133. package/scripts/fix-esm-extensions.mjs +0 -181
  134. package/scripts/huggingface/README.md +0 -537
  135. package/scripts/huggingface/publish.sh +0 -112
  136. package/scripts/hybrid-model-compare.js +0 -373
  137. package/scripts/improved-model-compare.js +0 -288
  138. package/scripts/optimized-model-compare.js +0 -364
  139. package/scripts/real-model-compare.js +0 -280
  140. package/scripts/smoke-esm.mjs +0 -82
  141. package/scripts/training/agentic-flow-capabilities.json +0 -329
  142. package/scripts/training/claude-code-synth.js +0 -505
  143. package/scripts/training/claude-flow-capabilities.json +0 -1322
  144. package/scripts/training/claude-hard-negatives.js +0 -222
  145. package/scripts/training/contrastive-finetune.js +0 -517
  146. package/scripts/training/ecosystem-triplets.jsonl +0 -1467
  147. package/scripts/training/generate-ecosystem-triplets.js +0 -1324
  148. package/scripts/training/routing-dataset.js +0 -634
  149. package/scripts/training/ruvector-capabilities.json +0 -798
  150. package/scripts/training/validate-ecosystem.js +0 -381
  151. package/scripts/training/validation-results.json +0 -23
@@ -1,615 +0,0 @@
1
- /**
2
- * RuvLLM Type Definitions
3
- */
4
- /**
5
- * Configuration for RuvLLM engine
6
- */
7
- export interface RuvLLMConfig {
8
- /** Embedding dimension (default: 768) */
9
- embeddingDim?: number;
10
- /** Router hidden dimension (default: 128) */
11
- routerHiddenDim?: number;
12
- /** HNSW M parameter (default: 16) */
13
- hnswM?: number;
14
- /** HNSW ef_construction (default: 100) */
15
- hnswEfConstruction?: number;
16
- /** HNSW ef_search (default: 64) */
17
- hnswEfSearch?: number;
18
- /** Enable learning (default: true) */
19
- learningEnabled?: boolean;
20
- /** Quality threshold for learning (default: 0.7) */
21
- qualityThreshold?: number;
22
- /** EWC lambda (default: 2000) */
23
- ewcLambda?: number;
24
- /**
25
- * Throw instead of warning when the engine cannot produce language-model
26
- * text: when a `modelPath` is passed (this package does not load GGUF
27
- * files), and when `generate()`/`query()` would return text from the
28
- * native engine, which has no language-model weights. Default false.
29
- */
30
- strict?: boolean;
31
- }
32
- /**
33
- * Generation configuration
34
- */
35
- export interface GenerationConfig {
36
- /** Maximum tokens to generate */
37
- maxTokens?: number;
38
- /** Temperature for sampling (0.0 - 2.0) */
39
- temperature?: number;
40
- /** Top-p nucleus sampling (0.0 - 1.0) */
41
- topP?: number;
42
- /** Top-k sampling */
43
- topK?: number;
44
- /** Repetition penalty */
45
- repetitionPenalty?: number;
46
- }
47
- /**
48
- * Query response from the LLM
49
- */
50
- export interface QueryResponse {
51
- /** Generated text */
52
- text: string;
53
- /** Confidence score (0.0 - 1.0) */
54
- confidence: number;
55
- /** Selected model */
56
- model: string;
57
- /** Context size used */
58
- contextSize: number;
59
- /** Latency in milliseconds */
60
- latencyMs: number;
61
- /** Request ID for feedback */
62
- requestId: string;
63
- }
64
- /**
65
- * Routing decision
66
- */
67
- export interface RoutingDecision {
68
- /** Selected model size */
69
- model: ModelSize;
70
- /** Recommended context size */
71
- contextSize: number;
72
- /** Temperature */
73
- temperature: number;
74
- /** Top-p */
75
- topP: number;
76
- /** Confidence */
77
- confidence: number;
78
- }
79
- /**
80
- * Memory search result
81
- */
82
- /** Identifier for a stored memory node. */
83
- export type MemoryId = string | number;
84
- export interface MemoryResult {
85
- /** Node ID — a UUID string on current native builds, a number on older ones. */
86
- id: MemoryId;
87
- /** Similarity score */
88
- score: number;
89
- /** Content text */
90
- content: string;
91
- /** Metadata */
92
- metadata: Record<string, unknown>;
93
- }
94
- /**
95
- * Engine statistics
96
- */
97
- export interface RuvLLMStats {
98
- /** Total queries processed */
99
- totalQueries: number;
100
- /** Memory nodes stored */
101
- memoryNodes: number;
102
- /** Patterns learned */
103
- patternsLearned: number;
104
- /** Average latency in ms */
105
- avgLatencyMs: number;
106
- /** Cache hit rate (0.0 - 1.0) */
107
- cacheHitRate: number;
108
- /** Router accuracy (0.0 - 1.0) */
109
- routerAccuracy: number;
110
- }
111
- /**
112
- * Model size options
113
- */
114
- export type ModelSize = 'M350' | 'M700' | 'B1_2' | 'B2_6';
115
- /**
116
- * Feedback for learning
117
- */
118
- export interface Feedback {
119
- /** Request ID from query response */
120
- requestId: string;
121
- /** Rating 1-5 */
122
- rating: number;
123
- /** Optional correction text */
124
- correction?: string;
125
- }
126
- /**
127
- * Session for multi-turn conversations
128
- */
129
- export interface Session {
130
- /** Session ID */
131
- id: string;
132
- /** Created timestamp */
133
- createdAt: Date;
134
- /** Messages in session */
135
- messageCount: number;
136
- }
137
- /**
138
- * SIMD capabilities
139
- */
140
- export interface SimdCapabilities {
141
- /** Has any SIMD support */
142
- hasSimd: boolean;
143
- /** Available SIMD instructions */
144
- capabilities: string[];
145
- }
146
- /**
147
- * Embedding result
148
- */
149
- export type Embedding = number[];
150
- /**
151
- * Batch query request
152
- */
153
- export interface BatchQueryRequest {
154
- /** Queries to process */
155
- queries: string[];
156
- /** Optional generation config */
157
- config?: GenerationConfig;
158
- }
159
- /**
160
- * Batch query response
161
- */
162
- export interface BatchQueryResponse {
163
- /** Responses for each query */
164
- responses: QueryResponse[];
165
- /** Total processing time in ms */
166
- totalLatencyMs: number;
167
- }
168
- /**
169
- * SONA Configuration for adaptive learning
170
- */
171
- export interface SonaConfig {
172
- /** Enable instant loop (real-time learning) */
173
- instantLoopEnabled?: boolean;
174
- /** Enable background loop (batch learning) */
175
- backgroundLoopEnabled?: boolean;
176
- /** Learning rate for LoRA adapters */
177
- loraLearningRate?: number;
178
- /** LoRA rank (lower = faster, higher = more capacity) */
179
- loraRank?: number;
180
- /** EWC lambda for memory protection */
181
- ewcLambda?: number;
182
- /** Max trajectory buffer size */
183
- maxTrajectorySize?: number;
184
- /** Pattern similarity threshold */
185
- patternThreshold?: number;
186
- }
187
- /**
188
- * Learning signal from user feedback
189
- */
190
- export interface LearningSignal {
191
- /** Request ID */
192
- requestId: string;
193
- /** Quality score (0-1) */
194
- quality: number;
195
- /** Signal type */
196
- type: SignalType;
197
- /** Optional correction */
198
- correction?: string;
199
- /** Timestamp */
200
- timestamp: Date;
201
- }
202
- /**
203
- * Signal types for learning
204
- */
205
- export type SignalType = 'positive' | 'negative' | 'correction' | 'implicit';
206
- /**
207
- * Query trajectory for learning
208
- */
209
- export interface QueryTrajectory {
210
- /** Trajectory ID */
211
- id: string;
212
- /** Steps in the trajectory */
213
- steps: TrajectoryStep[];
214
- /** Final outcome */
215
- outcome: TrajectoryOutcome;
216
- /** Total duration */
217
- durationMs: number;
218
- }
219
- /**
220
- * Single step in a trajectory
221
- */
222
- export interface TrajectoryStep {
223
- /** Step type */
224
- type: 'query' | 'route' | 'generate' | 'memory' | 'feedback';
225
- /** Input data */
226
- input: string;
227
- /** Output data */
228
- output: string;
229
- /** Duration of this step */
230
- durationMs: number;
231
- /** Confidence at this step */
232
- confidence: number;
233
- }
234
- /**
235
- * Trajectory outcome
236
- */
237
- export type TrajectoryOutcome = 'success' | 'partial' | 'failure' | 'unknown';
238
- /**
239
- * Learned pattern from ReasoningBank
240
- */
241
- export interface LearnedPattern {
242
- /** Pattern ID */
243
- id: string;
244
- /** Pattern type */
245
- type: PatternType;
246
- /** Pattern embedding */
247
- embedding: Embedding;
248
- /** Success rate (0-1) */
249
- successRate: number;
250
- /** Times used */
251
- useCount: number;
252
- /** Last used timestamp */
253
- lastUsed: Date;
254
- }
255
- /**
256
- * Types of learned patterns
257
- */
258
- export type PatternType = 'query_response' | 'routing' | 'context_retrieval' | 'correction' | 'abstraction';
259
- /**
260
- * LoRA adapter configuration
261
- */
262
- export interface LoRAConfig {
263
- /** Adapter rank (4, 8, 16, 32) */
264
- rank: number;
265
- /** Alpha scaling factor */
266
- alpha: number;
267
- /** Dropout rate */
268
- dropout: number;
269
- /** Target modules to adapt */
270
- targetModules: string[];
271
- }
272
- /**
273
- * EWC (Elastic Weight Consolidation) stats
274
- */
275
- export interface EwcStats {
276
- /** Number of tasks learned */
277
- tasksLearned: number;
278
- /** Fisher information computed */
279
- fisherComputed: boolean;
280
- /** Memory protection strength */
281
- protectionStrength: number;
282
- /** Estimated forgetting rate */
283
- forgettingRate: number;
284
- }
285
- /**
286
- * Extended session with conversation history
287
- */
288
- export interface ConversationSession extends Session {
289
- /** Conversation messages */
290
- messages: ConversationMessage[];
291
- /** Session context (accumulated) */
292
- context: string[];
293
- /** Active memory IDs */
294
- activeMemoryIds: number[];
295
- /** Session metadata */
296
- metadata: Record<string, unknown>;
297
- }
298
- /**
299
- * Single message in conversation
300
- */
301
- export interface ConversationMessage {
302
- /** Message role */
303
- role: 'user' | 'assistant' | 'system';
304
- /** Message content */
305
- content: string;
306
- /** Timestamp */
307
- timestamp: Date;
308
- /** Associated request ID (if assistant) */
309
- requestId?: string;
310
- }
311
- /**
312
- * Streaming response chunk
313
- */
314
- export interface StreamChunk {
315
- /** Chunk text */
316
- text: string;
317
- /** Is final chunk */
318
- done: boolean;
319
- /** Token count so far */
320
- tokenCount: number;
321
- /** Cumulative latency */
322
- latencyMs: number;
323
- }
324
- /**
325
- * Stream options
326
- */
327
- export interface StreamOptions extends GenerationConfig {
328
- /** Callback for each chunk */
329
- onChunk?: (chunk: StreamChunk) => void;
330
- /** Callback on completion */
331
- onComplete?: (response: QueryResponse) => void;
332
- /** Callback on error */
333
- onError?: (error: Error) => void;
334
- }
335
- /**
336
- * Memory compression result
337
- */
338
- export interface CompressionResult {
339
- /** Nodes compressed */
340
- nodesCompressed: number;
341
- /** Nodes archived */
342
- nodesArchived: number;
343
- /** Concepts created */
344
- conceptsCreated: number;
345
- /** Memory saved (bytes) */
346
- memorySaved: number;
347
- /** Duration */
348
- durationMs: number;
349
- }
350
- /**
351
- * Archive query result
352
- */
353
- export interface ArchiveResult {
354
- /** Archived node ID */
355
- id: number;
356
- /** Original content (if available) */
357
- content?: string;
358
- /** Concept it belongs to */
359
- conceptId?: string;
360
- /** Archive timestamp */
361
- archivedAt: Date;
362
- }
363
- /**
364
- * Attention weights for interpretability
365
- */
366
- export interface AttentionWeights {
367
- /** Query-key attention scores */
368
- scores: number[][];
369
- /** Head index */
370
- headIndex: number;
371
- /** Layer index */
372
- layerIndex: number;
373
- }
374
- /**
375
- * Attention analysis result
376
- */
377
- export interface AttentionAnalysis {
378
- /** Most attended tokens */
379
- topAttended: Array<{
380
- token: string;
381
- weight: number;
382
- }>;
383
- /** Attention entropy (uncertainty) */
384
- entropy: number;
385
- /** Focus score (0-1, higher = more focused) */
386
- focusScore: number;
387
- }
388
- /**
389
- * Federated learning configuration
390
- */
391
- export interface FederatedConfig {
392
- /** Hidden dimension for embeddings */
393
- hiddenDim?: number;
394
- /** Embedding dimension */
395
- embeddingDim?: number;
396
- /** Micro-LoRA rank */
397
- microLoraRank?: number;
398
- /** Base LoRA rank */
399
- baseLoraRank?: number;
400
- /** Trajectory buffer capacity */
401
- trajectoryCapacity?: number;
402
- /** Pattern cluster count */
403
- patternClusters?: number;
404
- /** EWC lambda for regularization */
405
- ewcLambda?: number;
406
- /** Quality threshold for accepting trajectories */
407
- qualityThreshold?: number;
408
- }
409
- /**
410
- * Trajectory export for federation
411
- */
412
- export interface TrajectoryExport {
413
- /** Query embedding */
414
- embedding: Embedding;
415
- /** Quality score */
416
- quality: number;
417
- /** Model route (if any) */
418
- route?: string;
419
- /** Context identifiers */
420
- context: string[];
421
- /** Timestamp */
422
- timestamp: number;
423
- }
424
- /**
425
- * Agent export statistics
426
- */
427
- export interface AgentExportStats {
428
- /** Total trajectories processed */
429
- totalTrajectories: number;
430
- /** Average quality */
431
- avgQuality: number;
432
- /** Patterns learned locally */
433
- patternsLearned: number;
434
- }
435
- /**
436
- * Exported state from an ephemeral agent
437
- */
438
- export interface AgentExport {
439
- /** Agent identifier */
440
- agentId: string;
441
- /** Exported trajectories */
442
- trajectories: TrajectoryExport[];
443
- /** Agent statistics */
444
- stats: AgentExportStats;
445
- /** Session duration in milliseconds */
446
- sessionDurationMs: number;
447
- /** Export timestamp */
448
- timestamp: number;
449
- }
450
- /**
451
- * Agent contribution record
452
- */
453
- export interface AgentContribution {
454
- /** Number of trajectories contributed */
455
- trajectoryCount: number;
456
- /** Average quality of contributions */
457
- avgQuality: number;
458
- /** Contribution timestamp */
459
- timestamp: number;
460
- /** Session duration */
461
- sessionDurationMs: number;
462
- }
463
- /**
464
- * Result of aggregating an agent export
465
- */
466
- export interface AggregationResult {
467
- /** Agent ID that was aggregated */
468
- agentId: string;
469
- /** Number of trajectories accepted */
470
- trajectoriesAccepted: number;
471
- /** Number of trajectories rejected (below quality threshold) */
472
- trajectoriesRejected: number;
473
- /** Whether consolidation was triggered */
474
- consolidated: boolean;
475
- /** Total number of contributing agents */
476
- totalAgents: number;
477
- /** Total trajectories in coordinator */
478
- totalTrajectories: number;
479
- }
480
- /**
481
- * Coordinator statistics
482
- */
483
- export interface CoordinatorStats {
484
- /** Coordinator identifier */
485
- coordinatorId: string;
486
- /** Number of contributing agents */
487
- totalAgents: number;
488
- /** Total trajectories aggregated */
489
- totalTrajectories: number;
490
- /** Patterns learned */
491
- patternsLearned: number;
492
- /** Average quality across all contributions */
493
- avgQuality: number;
494
- /** Quality threshold */
495
- qualityThreshold: number;
496
- }
497
- /**
498
- * Federated learning topology
499
- */
500
- export type FederatedTopology = 'star' | 'hierarchical' | 'peer-to-peer';
501
- /**
502
- * Training configuration
503
- */
504
- export interface TrainingConfig {
505
- /** Initial learning rate */
506
- learningRate?: number;
507
- /** Batch size */
508
- batchSize?: number;
509
- /** Number of epochs */
510
- epochs?: number;
511
- /** Learning rate scheduler */
512
- scheduler?: 'constant' | 'linear' | 'cosine' | 'warmup';
513
- /** Warmup steps (for warmup scheduler) */
514
- warmupSteps?: number;
515
- /** Weight decay */
516
- weightDecay?: number;
517
- /** Gradient clipping threshold */
518
- gradientClip?: number;
519
- /** Early stopping patience */
520
- earlyStoppingPatience?: number;
521
- /** Checkpoint interval (epochs) */
522
- checkpointInterval?: number;
523
- /** EWC lambda for continual learning */
524
- ewcLambda?: number;
525
- /** Validation split ratio */
526
- validationSplit?: number;
527
- /**
528
- * File path for best-checkpoint retention. When set, the pipeline writes
529
- * the current state to this path each time validation loss improves, so the
530
- * best-validation model survives even if later epochs degrade. Empty string
531
- * (the default) disables it; a no-op when validation never runs.
532
- */
533
- keepBestCheckpoint?: string;
534
- }
535
- /**
536
- * Training metrics snapshot
537
- */
538
- export interface TrainingMetricsSnapshot {
539
- /** Current epoch */
540
- epoch: number;
541
- /** Current step */
542
- step: number;
543
- /** Training loss */
544
- trainLoss: number;
545
- /** Validation loss */
546
- valLoss: number;
547
- /** Learning rate */
548
- learningRate: number;
549
- /** Gradient norm */
550
- gradNorm: number;
551
- /** Steps per second */
552
- stepsPerSecond: number;
553
- /** ETA in seconds */
554
- etaSeconds: number;
555
- }
556
- /**
557
- * Training result
558
- */
559
- export interface TrainingResult {
560
- /** Total epochs completed */
561
- epochs: number;
562
- /** Total steps completed */
563
- steps: number;
564
- /** Final training loss */
565
- finalLoss: number;
566
- /** Best validation loss */
567
- bestValLoss: number;
568
- /** Training duration in ms */
569
- durationMs: number;
570
- /** Loss history */
571
- lossHistory: number[];
572
- /** Validation loss history */
573
- valLossHistory: number[];
574
- /** Early stopped */
575
- earlyStopped: boolean;
576
- }
577
- /**
578
- * Training checkpoint
579
- */
580
- export interface TrainingCheckpoint {
581
- /** Epoch number */
582
- epoch: number;
583
- /** Step number */
584
- step: number;
585
- /** Training loss at checkpoint */
586
- loss: number;
587
- /** Model weights (serialized) */
588
- weights: string;
589
- /** Timestamp */
590
- timestamp: number;
591
- }
592
- /**
593
- * Export format options
594
- */
595
- export type ExportFormat = 'safetensors' | 'json' | 'binary' | 'onnx';
596
- /**
597
- * Model metadata for export
598
- */
599
- export interface ModelMetadata {
600
- /** Model name */
601
- name: string;
602
- /** Model version */
603
- version: string;
604
- /** Architecture type */
605
- architecture: string;
606
- /** Training info */
607
- training?: {
608
- steps: number;
609
- loss: number;
610
- learningRate: number;
611
- };
612
- /** Custom metadata */
613
- custom?: Record<string, unknown>;
614
- }
615
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/dist/cjs/types.js DELETED
@@ -1,6 +0,0 @@
1
- "use strict";
2
- /**
3
- * RuvLLM Type Definitions
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSdXZMTE0gVHlwZSBEZWZpbml0aW9uc1xuICovXG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgUnV2TExNIGVuZ2luZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1dkxMTUNvbmZpZyB7XG4gIC8qKiBFbWJlZGRpbmcgZGltZW5zaW9uIChkZWZhdWx0OiA3NjgpICovXG4gIGVtYmVkZGluZ0RpbT86IG51bWJlcjtcbiAgLyoqIFJvdXRlciBoaWRkZW4gZGltZW5zaW9uIChkZWZhdWx0OiAxMjgpICovXG4gIHJvdXRlckhpZGRlbkRpbT86IG51bWJlcjtcbiAgLyoqIEhOU1cgTSBwYXJhbWV0ZXIgKGRlZmF1bHQ6IDE2KSAqL1xuICBobnN3TT86IG51bWJlcjtcbiAgLyoqIEhOU1cgZWZfY29uc3RydWN0aW9uIChkZWZhdWx0OiAxMDApICovXG4gIGhuc3dFZkNvbnN0cnVjdGlvbj86IG51bWJlcjtcbiAgLyoqIEhOU1cgZWZfc2VhcmNoIChkZWZhdWx0OiA2NCkgKi9cbiAgaG5zd0VmU2VhcmNoPzogbnVtYmVyO1xuICAvKiogRW5hYmxlIGxlYXJuaW5nIChkZWZhdWx0OiB0cnVlKSAqL1xuICBsZWFybmluZ0VuYWJsZWQ/OiBib29sZWFuO1xuICAvKiogUXVhbGl0eSB0aHJlc2hvbGQgZm9yIGxlYXJuaW5nIChkZWZhdWx0OiAwLjcpICovXG4gIHF1YWxpdHlUaHJlc2hvbGQ/OiBudW1iZXI7XG4gIC8qKiBFV0MgbGFtYmRhIChkZWZhdWx0OiAyMDAwKSAqL1xuICBld2NMYW1iZGE/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaHJvdyBpbnN0ZWFkIG9mIHdhcm5pbmcgd2hlbiB0aGUgZW5naW5lIGNhbm5vdCBwcm9kdWNlIGxhbmd1YWdlLW1vZGVsXG4gICAqIHRleHQ6IHdoZW4gYSBgbW9kZWxQYXRoYCBpcyBwYXNzZWQgKHRoaXMgcGFja2FnZSBkb2VzIG5vdCBsb2FkIEdHVUZcbiAgICogZmlsZXMpLCBhbmQgd2hlbiBgZ2VuZXJhdGUoKWAvYHF1ZXJ5KClgIHdvdWxkIHJldHVybiB0ZXh0IGZyb20gdGhlXG4gICAqIG5hdGl2ZSBlbmdpbmUsIHdoaWNoIGhhcyBubyBsYW5ndWFnZS1tb2RlbCB3ZWlnaHRzLiBEZWZhdWx0IGZhbHNlLlxuICAgKi9cbiAgc3RyaWN0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBHZW5lcmF0aW9uIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHZW5lcmF0aW9uQ29uZmlnIHtcbiAgLyoqIE1heGltdW0gdG9rZW5zIHRvIGdlbmVyYXRlICovXG4gIG1heFRva2Vucz86IG51bWJlcjtcbiAgLyoqIFRlbXBlcmF0dXJlIGZvciBzYW1wbGluZyAoMC4wIC0gMi4wKSAqL1xuICB0ZW1wZXJhdHVyZT86IG51bWJlcjtcbiAgLyoqIFRvcC1wIG51Y2xldXMgc2FtcGxpbmcgKDAuMCAtIDEuMCkgKi9cbiAgdG9wUD86IG51bWJlcjtcbiAgLyoqIFRvcC1rIHNhbXBsaW5nICovXG4gIHRvcEs/OiBudW1iZXI7XG4gIC8qKiBSZXBldGl0aW9uIHBlbmFsdHkgKi9cbiAgcmVwZXRpdGlvblBlbmFsdHk/OiBudW1iZXI7XG59XG5cbi8qKlxuICogUXVlcnkgcmVzcG9uc2UgZnJvbSB0aGUgTExNXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUXVlcnlSZXNwb25zZSB7XG4gIC8qKiBHZW5lcmF0ZWQgdGV4dCAqL1xuICB0ZXh0OiBzdHJpbmc7XG4gIC8qKiBDb25maWRlbmNlIHNjb3JlICgwLjAgLSAxLjApICovXG4gIGNvbmZpZGVuY2U6IG51bWJlcjtcbiAgLyoqIFNlbGVjdGVkIG1vZGVsICovXG4gIG1vZGVsOiBzdHJpbmc7XG4gIC8qKiBDb250ZXh0IHNpemUgdXNlZCAqL1xuICBjb250ZXh0U2l6ZTogbnVtYmVyO1xuICAvKiogTGF0ZW5jeSBpbiBtaWxsaXNlY29uZHMgKi9cbiAgbGF0ZW5jeU1zOiBudW1iZXI7XG4gIC8qKiBSZXF1ZXN0IElEIGZvciBmZWVkYmFjayAqL1xuICByZXF1ZXN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSb3V0aW5nIGRlY2lzaW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm91dGluZ0RlY2lzaW9uIHtcbiAgLyoqIFNlbGVjdGVkIG1vZGVsIHNpemUgKi9cbiAgbW9kZWw6IE1vZGVsU2l6ZTtcbiAgLyoqIFJlY29tbWVuZGVkIGNvbnRleHQgc2l6ZSAqL1xuICBjb250ZXh0U2l6ZTogbnVtYmVyO1xuICAvKiogVGVtcGVyYXR1cmUgKi9cbiAgdGVtcGVyYXR1cmU6IG51bWJlcjtcbiAgLyoqIFRvcC1wICovXG4gIHRvcFA6IG51bWJlcjtcbiAgLyoqIENvbmZpZGVuY2UgKi9cbiAgY29uZmlkZW5jZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIE1lbW9yeSBzZWFyY2ggcmVzdWx0XG4gKi9cbi8qKiBJZGVudGlmaWVyIGZvciBhIHN0b3JlZCBtZW1vcnkgbm9kZS4gKi9cbmV4cG9ydCB0eXBlIE1lbW9yeUlkID0gc3RyaW5nIHwgbnVtYmVyO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW9yeVJlc3VsdCB7XG4gIC8qKiBOb2RlIElEIOKAlCBhIFVVSUQgc3RyaW5nIG9uIGN1cnJlbnQgbmF0aXZlIGJ1aWxkcywgYSBudW1iZXIgb24gb2xkZXIgb25lcy4gKi9cbiAgaWQ6IE1lbW9yeUlkO1xuICAvKiogU2ltaWxhcml0eSBzY29yZSAqL1xuICBzY29yZTogbnVtYmVyO1xuICAvKiogQ29udGVudCB0ZXh0ICovXG4gIGNvbnRlbnQ6IHN0cmluZztcbiAgLyoqIE1ldGFkYXRhICovXG4gIG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuLyoqXG4gKiBFbmdpbmUgc3RhdGlzdGljc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1dkxMTVN0YXRzIHtcbiAgLyoqIFRvdGFsIHF1ZXJpZXMgcHJvY2Vzc2VkICovXG4gIHRvdGFsUXVlcmllczogbnVtYmVyO1xuICAvKiogTWVtb3J5IG5vZGVzIHN0b3JlZCAqL1xuICBtZW1vcnlOb2RlczogbnVtYmVyO1xuICAvKiogUGF0dGVybnMgbGVhcm5lZCAqL1xuICBwYXR0ZXJuc0xlYXJuZWQ6IG51bWJlcjtcbiAgLyoqIEF2ZXJhZ2UgbGF0ZW5jeSBpbiBtcyAqL1xuICBhdmdMYXRlbmN5TXM6IG51bWJlcjtcbiAgLyoqIENhY2hlIGhpdCByYXRlICgwLjAgLSAxLjApICovXG4gIGNhY2hlSGl0UmF0ZTogbnVtYmVyO1xuICAvKiogUm91dGVyIGFjY3VyYWN5ICgwLjAgLSAxLjApICovXG4gIHJvdXRlckFjY3VyYWN5OiBudW1iZXI7XG59XG5cbi8qKlxuICogTW9kZWwgc2l6ZSBvcHRpb25zXG4gKi9cbmV4cG9ydCB0eXBlIE1vZGVsU2l6ZSA9ICdNMzUwJyB8ICdNNzAwJyB8ICdCMV8yJyB8ICdCMl82JztcblxuLyoqXG4gKiBGZWVkYmFjayBmb3IgbGVhcm5pbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGZWVkYmFjayB7XG4gIC8qKiBSZXF1ZXN0IElEIGZyb20gcXVlcnkgcmVzcG9uc2UgKi9cbiAgcmVxdWVzdElkOiBzdHJpbmc7XG4gIC8qKiBSYXRpbmcgMS01ICovXG4gIHJhdGluZzogbnVtYmVyO1xuICAvKiogT3B0aW9uYWwgY29ycmVjdGlvbiB0ZXh0ICovXG4gIGNvcnJlY3Rpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogU2Vzc2lvbiBmb3IgbXVsdGktdHVybiBjb252ZXJzYXRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2Vzc2lvbiB7XG4gIC8qKiBTZXNzaW9uIElEICovXG4gIGlkOiBzdHJpbmc7XG4gIC8qKiBDcmVhdGVkIHRpbWVzdGFtcCAqL1xuICBjcmVhdGVkQXQ6IERhdGU7XG4gIC8qKiBNZXNzYWdlcyBpbiBzZXNzaW9uICovXG4gIG1lc3NhZ2VDb3VudDogbnVtYmVyO1xufVxuXG4vKipcbiAqIFNJTUQgY2FwYWJpbGl0aWVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2ltZENhcGFiaWxpdGllcyB7XG4gIC8qKiBIYXMgYW55IFNJTUQgc3VwcG9ydCAqL1xuICBoYXNTaW1kOiBib29sZWFuO1xuICAvKiogQXZhaWxhYmxlIFNJTUQgaW5zdHJ1Y3Rpb25zICovXG4gIGNhcGFiaWxpdGllczogc3RyaW5nW107XG59XG5cbi8qKlxuICogRW1iZWRkaW5nIHJlc3VsdFxuICovXG5leHBvcnQgdHlwZSBFbWJlZGRpbmcgPSBudW1iZXJbXTtcblxuLyoqXG4gKiBCYXRjaCBxdWVyeSByZXF1ZXN0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmF0Y2hRdWVyeVJlcXVlc3Qge1xuICAvKiogUXVlcmllcyB0byBwcm9jZXNzICovXG4gIHF1ZXJpZXM6IHN0cmluZ1tdO1xuICAvKiogT3B0aW9uYWwgZ2VuZXJhdGlvbiBjb25maWcgKi9cbiAgY29uZmlnPzogR2VuZXJhdGlvbkNvbmZpZztcbn1cblxuLyoqXG4gKiBCYXRjaCBxdWVyeSByZXNwb25zZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhdGNoUXVlcnlSZXNwb25zZSB7XG4gIC8qKiBSZXNwb25zZXMgZm9yIGVhY2ggcXVlcnkgKi9cbiAgcmVzcG9uc2VzOiBRdWVyeVJlc3BvbnNlW107XG4gIC8qKiBUb3RhbCBwcm9jZXNzaW5nIHRpbWUgaW4gbXMgKi9cbiAgdG90YWxMYXRlbmN5TXM6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNPTkEgTGVhcm5pbmcgVHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogU09OQSBDb25maWd1cmF0aW9uIGZvciBhZGFwdGl2ZSBsZWFybmluZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNvbmFDb25maWcge1xuICAvKiogRW5hYmxlIGluc3RhbnQgbG9vcCAocmVhbC10aW1lIGxlYXJuaW5nKSAqL1xuICBpbnN0YW50TG9vcEVuYWJsZWQ/OiBib29sZWFuO1xuICAvKiogRW5hYmxlIGJhY2tncm91bmQgbG9vcCAoYmF0Y2ggbGVhcm5pbmcpICovXG4gIGJhY2tncm91bmRMb29wRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKiBMZWFybmluZyByYXRlIGZvciBMb1JBIGFkYXB0ZXJzICovXG4gIGxvcmFMZWFybmluZ1JhdGU/OiBudW1iZXI7XG4gIC8qKiBMb1JBIHJhbmsgKGxvd2VyID0gZmFzdGVyLCBoaWdoZXIgPSBtb3JlIGNhcGFjaXR5KSAqL1xuICBsb3JhUmFuaz86IG51bWJlcjtcbiAgLyoqIEVXQyBsYW1iZGEgZm9yIG1lbW9yeSBwcm90ZWN0aW9uICovXG4gIGV3Y0xhbWJkYT86IG51bWJlcjtcbiAgLyoqIE1heCB0cmFqZWN0b3J5IGJ1ZmZlciBzaXplICovXG4gIG1heFRyYWplY3RvcnlTaXplPzogbnVtYmVyO1xuICAvKiogUGF0dGVybiBzaW1pbGFyaXR5IHRocmVzaG9sZCAqL1xuICBwYXR0ZXJuVGhyZXNob2xkPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIExlYXJuaW5nIHNpZ25hbCBmcm9tIHVzZXIgZmVlZGJhY2tcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMZWFybmluZ1NpZ25hbCB7XG4gIC8qKiBSZXF1ZXN0IElEICovXG4gIHJlcXVlc3RJZDogc3RyaW5nO1xuICAvKiogUXVhbGl0eSBzY29yZSAoMC0xKSAqL1xuICBxdWFsaXR5OiBudW1iZXI7XG4gIC8qKiBTaWduYWwgdHlwZSAqL1xuICB0eXBlOiBTaWduYWxUeXBlO1xuICAvKiogT3B0aW9uYWwgY29ycmVjdGlvbiAqL1xuICBjb3JyZWN0aW9uPzogc3RyaW5nO1xuICAvKiogVGltZXN0YW1wICovXG4gIHRpbWVzdGFtcDogRGF0ZTtcbn1cblxuLyoqXG4gKiBTaWduYWwgdHlwZXMgZm9yIGxlYXJuaW5nXG4gKi9cbmV4cG9ydCB0eXBlIFNpZ25hbFR5cGUgPSAncG9zaXRpdmUnIHwgJ25lZ2F0aXZlJyB8ICdjb3JyZWN0aW9uJyB8ICdpbXBsaWNpdCc7XG5cbi8qKlxuICogUXVlcnkgdHJhamVjdG9yeSBmb3IgbGVhcm5pbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWVyeVRyYWplY3Rvcnkge1xuICAvKiogVHJhamVjdG9yeSBJRCAqL1xuICBpZDogc3RyaW5nO1xuICAvKiogU3RlcHMgaW4gdGhlIHRyYWplY3RvcnkgKi9cbiAgc3RlcHM6IFRyYWplY3RvcnlTdGVwW107XG4gIC8qKiBGaW5hbCBvdXRjb21lICovXG4gIG91dGNvbWU6IFRyYWplY3RvcnlPdXRjb21lO1xuICAvKiogVG90YWwgZHVyYXRpb24gKi9cbiAgZHVyYXRpb25NczogbnVtYmVyO1xufVxuXG4vKipcbiAqIFNpbmdsZSBzdGVwIGluIGEgdHJhamVjdG9yeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYWplY3RvcnlTdGVwIHtcbiAgLyoqIFN0ZXAgdHlwZSAqL1xuICB0eXBlOiAncXVlcnknIHwgJ3JvdXRlJyB8ICdnZW5lcmF0ZScgfCAnbWVtb3J5JyB8ICdmZWVkYmFjayc7XG4gIC8qKiBJbnB1dCBkYXRhICovXG4gIGlucHV0OiBzdHJpbmc7XG4gIC8qKiBPdXRwdXQgZGF0YSAqL1xuICBvdXRwdXQ6IHN0cmluZztcbiAgLyoqIER1cmF0aW9uIG9mIHRoaXMgc3RlcCAqL1xuICBkdXJhdGlvbk1zOiBudW1iZXI7XG4gIC8qKiBDb25maWRlbmNlIGF0IHRoaXMgc3RlcCAqL1xuICBjb25maWRlbmNlOiBudW1iZXI7XG59XG5cbi8qKlxuICogVHJhamVjdG9yeSBvdXRjb21lXG4gKi9cbmV4cG9ydCB0eXBlIFRyYWplY3RvcnlPdXRjb21lID0gJ3N1Y2Nlc3MnIHwgJ3BhcnRpYWwnIHwgJ2ZhaWx1cmUnIHwgJ3Vua25vd24nO1xuXG4vKipcbiAqIExlYXJuZWQgcGF0dGVybiBmcm9tIFJlYXNvbmluZ0JhbmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMZWFybmVkUGF0dGVybiB7XG4gIC8qKiBQYXR0ZXJuIElEICovXG4gIGlkOiBzdHJpbmc7XG4gIC8qKiBQYXR0ZXJuIHR5cGUgKi9cbiAgdHlwZTogUGF0dGVyblR5cGU7XG4gIC8qKiBQYXR0ZXJuIGVtYmVkZGluZyAqL1xuICBlbWJlZGRpbmc6IEVtYmVkZGluZztcbiAgLyoqIFN1Y2Nlc3MgcmF0ZSAoMC0xKSAqL1xuICBzdWNjZXNzUmF0ZTogbnVtYmVyO1xuICAvKiogVGltZXMgdXNlZCAqL1xuICB1c2VDb3VudDogbnVtYmVyO1xuICAvKiogTGFzdCB1c2VkIHRpbWVzdGFtcCAqL1xuICBsYXN0VXNlZDogRGF0ZTtcbn1cblxuLyoqXG4gKiBUeXBlcyBvZiBsZWFybmVkIHBhdHRlcm5zXG4gKi9cbmV4cG9ydCB0eXBlIFBhdHRlcm5UeXBlID1cbiAgfCAncXVlcnlfcmVzcG9uc2UnICAgICAgLy8gUSZBIHBhdHRlcm5cbiAgfCAncm91dGluZycgICAgICAgICAgICAgLy8gUm91dGluZyBkZWNpc2lvbiBwYXR0ZXJuXG4gIHwgJ2NvbnRleHRfcmV0cmlldmFsJyAgIC8vIE1lbW9yeSByZXRyaWV2YWwgcGF0dGVyblxuICB8ICdjb3JyZWN0aW9uJyAgICAgICAgICAvLyBVc2VyIGNvcnJlY3Rpb24gcGF0dGVyblxuICB8ICdhYnN0cmFjdGlvbic7ICAgICAgICAvLyBDb21wcmVzc2VkIGNvbmNlcHRcblxuLyoqXG4gKiBMb1JBIGFkYXB0ZXIgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvUkFDb25maWcge1xuICAvKiogQWRhcHRlciByYW5rICg0LCA4LCAxNiwgMzIpICovXG4gIHJhbms6IG51bWJlcjtcbiAgLyoqIEFscGhhIHNjYWxpbmcgZmFjdG9yICovXG4gIGFscGhhOiBudW1iZXI7XG4gIC8qKiBEcm9wb3V0IHJhdGUgKi9cbiAgZHJvcG91dDogbnVtYmVyO1xuICAvKiogVGFyZ2V0IG1vZHVsZXMgdG8gYWRhcHQgKi9cbiAgdGFyZ2V0TW9kdWxlczogc3RyaW5nW107XG59XG5cbi8qKlxuICogRVdDIChFbGFzdGljIFdlaWdodCBDb25zb2xpZGF0aW9uKSBzdGF0c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV3Y1N0YXRzIHtcbiAgLyoqIE51bWJlciBvZiB0YXNrcyBsZWFybmVkICovXG4gIHRhc2tzTGVhcm5lZDogbnVtYmVyO1xuICAvKiogRmlzaGVyIGluZm9ybWF0aW9uIGNvbXB1dGVkICovXG4gIGZpc2hlckNvbXB1dGVkOiBib29sZWFuO1xuICAvKiogTWVtb3J5IHByb3RlY3Rpb24gc3RyZW5ndGggKi9cbiAgcHJvdGVjdGlvblN0cmVuZ3RoOiBudW1iZXI7XG4gIC8qKiBFc3RpbWF0ZWQgZm9yZ2V0dGluZyByYXRlICovXG4gIGZvcmdldHRpbmdSYXRlOiBudW1iZXI7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTZXNzaW9uICYgQ29udmVyc2F0aW9uIFR5cGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEV4dGVuZGVkIHNlc3Npb24gd2l0aCBjb252ZXJzYXRpb24gaGlzdG9yeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnZlcnNhdGlvblNlc3Npb24gZXh0ZW5kcyBTZXNzaW9uIHtcbiAgLyoqIENvbnZlcnNhdGlvbiBtZXNzYWdlcyAqL1xuICBtZXNzYWdlczogQ29udmVyc2F0aW9uTWVzc2FnZVtdO1xuICAvKiogU2Vzc2lvbiBjb250ZXh0IChhY2N1bXVsYXRlZCkgKi9cbiAgY29udGV4dDogc3RyaW5nW107XG4gIC8qKiBBY3RpdmUgbWVtb3J5IElEcyAqL1xuICBhY3RpdmVNZW1vcnlJZHM6IG51bWJlcltdO1xuICAvKiogU2Vzc2lvbiBtZXRhZGF0YSAqL1xuICBtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKlxuICogU2luZ2xlIG1lc3NhZ2UgaW4gY29udmVyc2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udmVyc2F0aW9uTWVzc2FnZSB7XG4gIC8qKiBNZXNzYWdlIHJvbGUgKi9cbiAgcm9sZTogJ3VzZXInIHwgJ2Fzc2lzdGFudCcgfCAnc3lzdGVtJztcbiAgLyoqIE1lc3NhZ2UgY29udGVudCAqL1xuICBjb250ZW50OiBzdHJpbmc7XG4gIC8qKiBUaW1lc3RhbXAgKi9cbiAgdGltZXN0YW1wOiBEYXRlO1xuICAvKiogQXNzb2NpYXRlZCByZXF1ZXN0IElEIChpZiBhc3Npc3RhbnQpICovXG4gIHJlcXVlc3RJZD86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFN0cmVhbWluZyBUeXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBTdHJlYW1pbmcgcmVzcG9uc2UgY2h1bmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdHJlYW1DaHVuayB7XG4gIC8qKiBDaHVuayB0ZXh0ICovXG4gIHRleHQ6IHN0cmluZztcbiAgLyoqIElzIGZpbmFsIGNodW5rICovXG4gIGRvbmU6IGJvb2xlYW47XG4gIC8qKiBUb2tlbiBjb3VudCBzbyBmYXIgKi9cbiAgdG9rZW5Db3VudDogbnVtYmVyO1xuICAvKiogQ3VtdWxhdGl2ZSBsYXRlbmN5ICovXG4gIGxhdGVuY3lNczogbnVtYmVyO1xufVxuXG4vKipcbiAqIFN0cmVhbSBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyZWFtT3B0aW9ucyBleHRlbmRzIEdlbmVyYXRpb25Db25maWcge1xuICAvKiogQ2FsbGJhY2sgZm9yIGVhY2ggY2h1bmsgKi9cbiAgb25DaHVuaz86IChjaHVuazogU3RyZWFtQ2h1bmspID0+IHZvaWQ7XG4gIC8qKiBDYWxsYmFjayBvbiBjb21wbGV0aW9uICovXG4gIG9uQ29tcGxldGU/OiAocmVzcG9uc2U6IFF1ZXJ5UmVzcG9uc2UpID0+IHZvaWQ7XG4gIC8qKiBDYWxsYmFjayBvbiBlcnJvciAqL1xuICBvbkVycm9yPzogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbXByZXNzaW9uICYgQXJjaGl2YWwgVHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogTWVtb3J5IGNvbXByZXNzaW9uIHJlc3VsdFxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXByZXNzaW9uUmVzdWx0IHtcbiAgLyoqIE5vZGVzIGNvbXByZXNzZWQgKi9cbiAgbm9kZXNDb21wcmVzc2VkOiBudW1iZXI7XG4gIC8qKiBOb2RlcyBhcmNoaXZlZCAqL1xuICBub2Rlc0FyY2hpdmVkOiBudW1iZXI7XG4gIC8qKiBDb25jZXB0cyBjcmVhdGVkICovXG4gIGNvbmNlcHRzQ3JlYXRlZDogbnVtYmVyO1xuICAvKiogTWVtb3J5IHNhdmVkIChieXRlcykgKi9cbiAgbWVtb3J5U2F2ZWQ6IG51bWJlcjtcbiAgLyoqIER1cmF0aW9uICovXG4gIGR1cmF0aW9uTXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBcmNoaXZlIHF1ZXJ5IHJlc3VsdFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFyY2hpdmVSZXN1bHQge1xuICAvKiogQXJjaGl2ZWQgbm9kZSBJRCAqL1xuICBpZDogbnVtYmVyO1xuICAvKiogT3JpZ2luYWwgY29udGVudCAoaWYgYXZhaWxhYmxlKSAqL1xuICBjb250ZW50Pzogc3RyaW5nO1xuICAvKiogQ29uY2VwdCBpdCBiZWxvbmdzIHRvICovXG4gIGNvbmNlcHRJZD86IHN0cmluZztcbiAgLyoqIEFyY2hpdmUgdGltZXN0YW1wICovXG4gIGFyY2hpdmVkQXQ6IERhdGU7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBBdHRlbnRpb24gVHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogQXR0ZW50aW9uIHdlaWdodHMgZm9yIGludGVycHJldGFiaWxpdHlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdHRlbnRpb25XZWlnaHRzIHtcbiAgLyoqIFF1ZXJ5LWtleSBhdHRlbnRpb24gc2NvcmVzICovXG4gIHNjb3JlczogbnVtYmVyW11bXTtcbiAgLyoqIEhlYWQgaW5kZXggKi9cbiAgaGVhZEluZGV4OiBudW1iZXI7XG4gIC8qKiBMYXllciBpbmRleCAqL1xuICBsYXllckluZGV4OiBudW1iZXI7XG59XG5cbi8qKlxuICogQXR0ZW50aW9uIGFuYWx5c2lzIHJlc3VsdFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF0dGVudGlvbkFuYWx5c2lzIHtcbiAgLyoqIE1vc3QgYXR0ZW5kZWQgdG9rZW5zICovXG4gIHRvcEF0dGVuZGVkOiBBcnJheTx7IHRva2VuOiBzdHJpbmc7IHdlaWdodDogbnVtYmVyIH0+O1xuICAvKiogQXR0ZW50aW9uIGVudHJvcHkgKHVuY2VydGFpbnR5KSAqL1xuICBlbnRyb3B5OiBudW1iZXI7XG4gIC8qKiBGb2N1cyBzY29yZSAoMC0xLCBoaWdoZXIgPSBtb3JlIGZvY3VzZWQpICovXG4gIGZvY3VzU2NvcmU6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZlZGVyYXRlZCBMZWFybmluZyBUeXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBGZWRlcmF0ZWQgbGVhcm5pbmcgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZlZGVyYXRlZENvbmZpZyB7XG4gIC8qKiBIaWRkZW4gZGltZW5zaW9uIGZvciBlbWJlZGRpbmdzICovXG4gIGhpZGRlbkRpbT86IG51bWJlcjtcbiAgLyoqIEVtYmVkZGluZyBkaW1lbnNpb24gKi9cbiAgZW1iZWRkaW5nRGltPzogbnVtYmVyO1xuICAvKiogTWljcm8tTG9SQSByYW5rICovXG4gIG1pY3JvTG9yYVJhbms/OiBudW1iZXI7XG4gIC8qKiBCYXNlIExvUkEgcmFuayAqL1xuICBiYXNlTG9yYVJhbms/OiBudW1iZXI7XG4gIC8qKiBUcmFqZWN0b3J5IGJ1ZmZlciBjYXBhY2l0eSAqL1xuICB0cmFqZWN0b3J5Q2FwYWNpdHk/OiBudW1iZXI7XG4gIC8qKiBQYXR0ZXJuIGNsdXN0ZXIgY291bnQgKi9cbiAgcGF0dGVybkNsdXN0ZXJzPzogbnVtYmVyO1xuICAvKiogRVdDIGxhbWJkYSBmb3IgcmVndWxhcml6YXRpb24gKi9cbiAgZXdjTGFtYmRhPzogbnVtYmVyO1xuICAvKiogUXVhbGl0eSB0aHJlc2hvbGQgZm9yIGFjY2VwdGluZyB0cmFqZWN0b3JpZXMgKi9cbiAgcXVhbGl0eVRocmVzaG9sZD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBUcmFqZWN0b3J5IGV4cG9ydCBmb3IgZmVkZXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYWplY3RvcnlFeHBvcnQge1xuICAvKiogUXVlcnkgZW1iZWRkaW5nICovXG4gIGVtYmVkZGluZzogRW1iZWRkaW5nO1xuICAvKiogUXVhbGl0eSBzY29yZSAqL1xuICBxdWFsaXR5OiBudW1iZXI7XG4gIC8qKiBNb2RlbCByb3V0ZSAoaWYgYW55KSAqL1xuICByb3V0ZT86IHN0cmluZztcbiAgLyoqIENvbnRleHQgaWRlbnRpZmllcnMgKi9cbiAgY29udGV4dDogc3RyaW5nW107XG4gIC8qKiBUaW1lc3RhbXAgKi9cbiAgdGltZXN0YW1wOiBudW1iZXI7XG59XG5cbi8qKlxuICogQWdlbnQgZXhwb3J0IHN0YXRpc3RpY3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBZ2VudEV4cG9ydFN0YXRzIHtcbiAgLyoqIFRvdGFsIHRyYWplY3RvcmllcyBwcm9jZXNzZWQgKi9cbiAgdG90YWxUcmFqZWN0b3JpZXM6IG51bWJlcjtcbiAgLyoqIEF2ZXJhZ2UgcXVhbGl0eSAqL1xuICBhdmdRdWFsaXR5OiBudW1iZXI7XG4gIC8qKiBQYXR0ZXJucyBsZWFybmVkIGxvY2FsbHkgKi9cbiAgcGF0dGVybnNMZWFybmVkOiBudW1iZXI7XG59XG5cbi8qKlxuICogRXhwb3J0ZWQgc3RhdGUgZnJvbSBhbiBlcGhlbWVyYWwgYWdlbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBZ2VudEV4cG9ydCB7XG4gIC8qKiBBZ2VudCBpZGVudGlmaWVyICovXG4gIGFnZW50SWQ6IHN0cmluZztcbiAgLyoqIEV4cG9ydGVkIHRyYWplY3RvcmllcyAqL1xuICB0cmFqZWN0b3JpZXM6IFRyYWplY3RvcnlFeHBvcnRbXTtcbiAgLyoqIEFnZW50IHN0YXRpc3RpY3MgKi9cbiAgc3RhdHM6IEFnZW50RXhwb3J0U3RhdHM7XG4gIC8qKiBTZXNzaW9uIGR1cmF0aW9uIGluIG1pbGxpc2Vjb25kcyAqL1xuICBzZXNzaW9uRHVyYXRpb25NczogbnVtYmVyO1xuICAvKiogRXhwb3J0IHRpbWVzdGFtcCAqL1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBZ2VudCBjb250cmlidXRpb24gcmVjb3JkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWdlbnRDb250cmlidXRpb24ge1xuICAvKiogTnVtYmVyIG9mIHRyYWplY3RvcmllcyBjb250cmlidXRlZCAqL1xuICB0cmFqZWN0b3J5Q291bnQ6IG51bWJlcjtcbiAgLyoqIEF2ZXJhZ2UgcXVhbGl0eSBvZiBjb250cmlidXRpb25zICovXG4gIGF2Z1F1YWxpdHk6IG51bWJlcjtcbiAgLyoqIENvbnRyaWJ1dGlvbiB0aW1lc3RhbXAgKi9cbiAgdGltZXN0YW1wOiBudW1iZXI7XG4gIC8qKiBTZXNzaW9uIGR1cmF0aW9uICovXG4gIHNlc3Npb25EdXJhdGlvbk1zOiBudW1iZXI7XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGFnZ3JlZ2F0aW5nIGFuIGFnZW50IGV4cG9ydFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFnZ3JlZ2F0aW9uUmVzdWx0IHtcbiAgLyoqIEFnZW50IElEIHRoYXQgd2FzIGFnZ3JlZ2F0ZWQgKi9cbiAgYWdlbnRJZDogc3RyaW5nO1xuICAvKiogTnVtYmVyIG9mIHRyYWplY3RvcmllcyBhY2NlcHRlZCAqL1xuICB0cmFqZWN0b3JpZXNBY2NlcHRlZDogbnVtYmVyO1xuICAvKiogTnVtYmVyIG9mIHRyYWplY3RvcmllcyByZWplY3RlZCAoYmVsb3cgcXVhbGl0eSB0aHJlc2hvbGQpICovXG4gIHRyYWplY3Rvcmllc1JlamVjdGVkOiBudW1iZXI7XG4gIC8qKiBXaGV0aGVyIGNvbnNvbGlkYXRpb24gd2FzIHRyaWdnZXJlZCAqL1xuICBjb25zb2xpZGF0ZWQ6IGJvb2xlYW47XG4gIC8qKiBUb3RhbCBudW1iZXIgb2YgY29udHJpYnV0aW5nIGFnZW50cyAqL1xuICB0b3RhbEFnZW50czogbnVtYmVyO1xuICAvKiogVG90YWwgdHJhamVjdG9yaWVzIGluIGNvb3JkaW5hdG9yICovXG4gIHRvdGFsVHJhamVjdG9yaWVzOiBudW1iZXI7XG59XG5cbi8qKlxuICogQ29vcmRpbmF0b3Igc3RhdGlzdGljc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENvb3JkaW5hdG9yU3RhdHMge1xuICAvKiogQ29vcmRpbmF0b3IgaWRlbnRpZmllciAqL1xuICBjb29yZGluYXRvcklkOiBzdHJpbmc7XG4gIC8qKiBOdW1iZXIgb2YgY29udHJpYnV0aW5nIGFnZW50cyAqL1xuICB0b3RhbEFnZW50czogbnVtYmVyO1xuICAvKiogVG90YWwgdHJhamVjdG9yaWVzIGFnZ3JlZ2F0ZWQgKi9cbiAgdG90YWxUcmFqZWN0b3JpZXM6IG51bWJlcjtcbiAgLyoqIFBhdHRlcm5zIGxlYXJuZWQgKi9cbiAgcGF0dGVybnNMZWFybmVkOiBudW1iZXI7XG4gIC8qKiBBdmVyYWdlIHF1YWxpdHkgYWNyb3NzIGFsbCBjb250cmlidXRpb25zICovXG4gIGF2Z1F1YWxpdHk6IG51bWJlcjtcbiAgLyoqIFF1YWxpdHkgdGhyZXNob2xkICovXG4gIHF1YWxpdHlUaHJlc2hvbGQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBGZWRlcmF0ZWQgbGVhcm5pbmcgdG9wb2xvZ3lcbiAqL1xuZXhwb3J0IHR5cGUgRmVkZXJhdGVkVG9wb2xvZ3kgPVxuICB8ICdzdGFyJyAgICAgICAgICAgLy8gQWdlbnRzIOKGkiBDZW50cmFsIENvb3JkaW5hdG9yXG4gIHwgJ2hpZXJhcmNoaWNhbCcgICAvLyBBZ2VudHMg4oaSIFJlZ2lvbmFsIOKGkiBHbG9iYWxcbiAgfCAncGVlci10by1wZWVyJzsgIC8vIEFnZW50cyBzaGFyZSBkaXJlY3RseVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHJhaW5pbmcgUGlwZWxpbmUgVHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogVHJhaW5pbmcgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYWluaW5nQ29uZmlnIHtcbiAgLyoqIEluaXRpYWwgbGVhcm5pbmcgcmF0ZSAqL1xuICBsZWFybmluZ1JhdGU/OiBudW1iZXI7XG4gIC8qKiBCYXRjaCBzaXplICovXG4gIGJhdGNoU2l6ZT86IG51bWJlcjtcbiAgLyoqIE51bWJlciBvZiBlcG9jaHMgKi9cbiAgZXBvY2hzPzogbnVtYmVyO1xuICAvKiogTGVhcm5pbmcgcmF0ZSBzY2hlZHVsZXIgKi9cbiAgc2NoZWR1bGVyPzogJ2NvbnN0YW50JyB8ICdsaW5lYXInIHwgJ2Nvc2luZScgfCAnd2FybXVwJztcbiAgLyoqIFdhcm11cCBzdGVwcyAoZm9yIHdhcm11cCBzY2hlZHVsZXIpICovXG4gIHdhcm11cFN0ZXBzPzogbnVtYmVyO1xuICAvKiogV2VpZ2h0IGRlY2F5ICovXG4gIHdlaWdodERlY2F5PzogbnVtYmVyO1xuICAvKiogR3JhZGllbnQgY2xpcHBpbmcgdGhyZXNob2xkICovXG4gIGdyYWRpZW50Q2xpcD86IG51bWJlcjtcbiAgLyoqIEVhcmx5IHN0b3BwaW5nIHBhdGllbmNlICovXG4gIGVhcmx5U3RvcHBpbmdQYXRpZW5jZT86IG51bWJlcjtcbiAgLyoqIENoZWNrcG9pbnQgaW50ZXJ2YWwgKGVwb2NocykgKi9cbiAgY2hlY2twb2ludEludGVydmFsPzogbnVtYmVyO1xuICAvKiogRVdDIGxhbWJkYSBmb3IgY29udGludWFsIGxlYXJuaW5nICovXG4gIGV3Y0xhbWJkYT86IG51bWJlcjtcbiAgLyoqIFZhbGlkYXRpb24gc3BsaXQgcmF0aW8gKi9cbiAgdmFsaWRhdGlvblNwbGl0PzogbnVtYmVyO1xuICAvKipcbiAgICogRmlsZSBwYXRoIGZvciBiZXN0LWNoZWNrcG9pbnQgcmV0ZW50aW9uLiBXaGVuIHNldCwgdGhlIHBpcGVsaW5lIHdyaXRlc1xuICAgKiB0aGUgY3VycmVudCBzdGF0ZSB0byB0aGlzIHBhdGggZWFjaCB0aW1lIHZhbGlkYXRpb24gbG9zcyBpbXByb3Zlcywgc28gdGhlXG4gICAqIGJlc3QtdmFsaWRhdGlvbiBtb2RlbCBzdXJ2aXZlcyBldmVuIGlmIGxhdGVyIGVwb2NocyBkZWdyYWRlLiBFbXB0eSBzdHJpbmdcbiAgICogKHRoZSBkZWZhdWx0KSBkaXNhYmxlcyBpdDsgYSBuby1vcCB3aGVuIHZhbGlkYXRpb24gbmV2ZXIgcnVucy5cbiAgICovXG4gIGtlZXBCZXN0Q2hlY2twb2ludD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBUcmFpbmluZyBtZXRyaWNzIHNuYXBzaG90XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhaW5pbmdNZXRyaWNzU25hcHNob3Qge1xuICAvKiogQ3VycmVudCBlcG9jaCAqL1xuICBlcG9jaDogbnVtYmVyO1xuICAvKiogQ3VycmVudCBzdGVwICovXG4gIHN0ZXA6IG51bWJlcjtcbiAgLyoqIFRyYWluaW5nIGxvc3MgKi9cbiAgdHJhaW5Mb3NzOiBudW1iZXI7XG4gIC8qKiBWYWxpZGF0aW9uIGxvc3MgKi9cbiAgdmFsTG9zczogbnVtYmVyO1xuICAvKiogTGVhcm5pbmcgcmF0ZSAqL1xuICBsZWFybmluZ1JhdGU6IG51bWJlcjtcbiAgLyoqIEdyYWRpZW50IG5vcm0gKi9cbiAgZ3JhZE5vcm06IG51bWJlcjtcbiAgLyoqIFN0ZXBzIHBlciBzZWNvbmQgKi9cbiAgc3RlcHNQZXJTZWNvbmQ6IG51bWJlcjtcbiAgLyoqIEVUQSBpbiBzZWNvbmRzICovXG4gIGV0YVNlY29uZHM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBUcmFpbmluZyByZXN1bHRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmFpbmluZ1Jlc3VsdCB7XG4gIC8qKiBUb3RhbCBlcG9jaHMgY29tcGxldGVkICovXG4gIGVwb2NoczogbnVtYmVyO1xuICAvKiogVG90YWwgc3RlcHMgY29tcGxldGVkICovXG4gIHN0ZXBzOiBudW1iZXI7XG4gIC8qKiBGaW5hbCB0cmFpbmluZyBsb3NzICovXG4gIGZpbmFsTG9zczogbnVtYmVyO1xuICAvKiogQmVzdCB2YWxpZGF0aW9uIGxvc3MgKi9cbiAgYmVzdFZhbExvc3M6IG51bWJlcjtcbiAgLyoqIFRyYWluaW5nIGR1cmF0aW9uIGluIG1zICovXG4gIGR1cmF0aW9uTXM6IG51bWJlcjtcbiAgLyoqIExvc3MgaGlzdG9yeSAqL1xuICBsb3NzSGlzdG9yeTogbnVtYmVyW107XG4gIC8qKiBWYWxpZGF0aW9uIGxvc3MgaGlzdG9yeSAqL1xuICB2YWxMb3NzSGlzdG9yeTogbnVtYmVyW107XG4gIC8qKiBFYXJseSBzdG9wcGVkICovXG4gIGVhcmx5U3RvcHBlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUcmFpbmluZyBjaGVja3BvaW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhaW5pbmdDaGVja3BvaW50IHtcbiAgLyoqIEVwb2NoIG51bWJlciAqL1xuICBlcG9jaDogbnVtYmVyO1xuICAvKiogU3RlcCBudW1iZXIgKi9cbiAgc3RlcDogbnVtYmVyO1xuICAvKiogVHJhaW5pbmcgbG9zcyBhdCBjaGVja3BvaW50ICovXG4gIGxvc3M6IG51bWJlcjtcbiAgLyoqIE1vZGVsIHdlaWdodHMgKHNlcmlhbGl6ZWQpICovXG4gIHdlaWdodHM6IHN0cmluZztcbiAgLyoqIFRpbWVzdGFtcCAqL1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEV4cG9ydC9TZXJpYWxpemF0aW9uIFR5cGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIEV4cG9ydCBmb3JtYXQgb3B0aW9uc1xuICovXG5leHBvcnQgdHlwZSBFeHBvcnRGb3JtYXQgPSAnc2FmZXRlbnNvcnMnIHwgJ2pzb24nIHwgJ2JpbmFyeScgfCAnb25ueCc7XG5cbi8qKlxuICogTW9kZWwgbWV0YWRhdGEgZm9yIGV4cG9ydFxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGVsTWV0YWRhdGEge1xuICAvKiogTW9kZWwgbmFtZSAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBNb2RlbCB2ZXJzaW9uICovXG4gIHZlcnNpb246IHN0cmluZztcbiAgLyoqIEFyY2hpdGVjdHVyZSB0eXBlICovXG4gIGFyY2hpdGVjdHVyZTogc3RyaW5nO1xuICAvKiogVHJhaW5pbmcgaW5mbyAqL1xuICB0cmFpbmluZz86IHtcbiAgICBzdGVwczogbnVtYmVyO1xuICAgIGxvc3M6IG51bWJlcjtcbiAgICBsZWFybmluZ1JhdGU6IG51bWJlcjtcbiAgfTtcbiAgLyoqIEN1c3RvbSBtZXRhZGF0YSAqL1xuICBjdXN0b20/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cbiJdfQ==