@agirails/sdk 2.7.0 → 3.1.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.
- package/README.md +1 -1
- package/bin/agirails +10 -0
- package/dist/ACTPClient.d.ts +15 -4
- package/dist/ACTPClient.d.ts.map +1 -1
- package/dist/ACTPClient.js +20 -8
- package/dist/ACTPClient.js.map +1 -1
- package/dist/abi/ACTPKernel.json +87 -6
- package/dist/adapters/BaseAdapter.d.ts +3 -3
- package/dist/adapters/BaseAdapter.js +3 -3
- package/dist/adapters/BasicAdapter.d.ts +1 -1
- package/dist/adapters/BasicAdapter.js +2 -2
- package/dist/adapters/BasicAdapter.js.map +1 -1
- package/dist/adapters/StandardAdapter.d.ts +30 -8
- package/dist/adapters/StandardAdapter.d.ts.map +1 -1
- package/dist/adapters/StandardAdapter.js +34 -9
- package/dist/adapters/StandardAdapter.js.map +1 -1
- package/dist/api/agirailsApp.d.ts +197 -0
- package/dist/api/agirailsApp.d.ts.map +1 -0
- package/dist/api/agirailsApp.js +175 -0
- package/dist/api/agirailsApp.js.map +1 -0
- package/dist/cli/agirails.d.ts +10 -0
- package/dist/cli/agirails.d.ts.map +1 -0
- package/dist/cli/agirails.js +187 -0
- package/dist/cli/agirails.js.map +1 -0
- package/dist/cli/commands/autopublish.d.ts +13 -0
- package/dist/cli/commands/autopublish.d.ts.map +1 -0
- package/dist/cli/commands/autopublish.js +156 -0
- package/dist/cli/commands/autopublish.js.map +1 -0
- package/dist/cli/commands/batch.js +1 -1
- package/dist/cli/commands/claim-code.d.ts +11 -0
- package/dist/cli/commands/claim-code.d.ts.map +1 -0
- package/dist/cli/commands/claim-code.js +160 -0
- package/dist/cli/commands/claim-code.js.map +1 -0
- package/dist/cli/commands/claim.d.ts +17 -0
- package/dist/cli/commands/claim.d.ts.map +1 -0
- package/dist/cli/commands/claim.js +104 -0
- package/dist/cli/commands/claim.js.map +1 -0
- package/dist/cli/commands/config.js +1 -1
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/find.d.ts +23 -0
- package/dist/cli/commands/find.d.ts.map +1 -0
- package/dist/cli/commands/find.js +230 -0
- package/dist/cli/commands/find.js.map +1 -0
- package/dist/cli/commands/health.d.ts +16 -0
- package/dist/cli/commands/health.d.ts.map +1 -0
- package/dist/cli/commands/health.js +287 -0
- package/dist/cli/commands/health.js.map +1 -0
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +42 -13
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/negotiate.d.ts +11 -0
- package/dist/cli/commands/negotiate.d.ts.map +1 -0
- package/dist/cli/commands/negotiate.js +192 -0
- package/dist/cli/commands/negotiate.js.map +1 -0
- package/dist/cli/commands/publish.d.ts.map +1 -1
- package/dist/cli/commands/publish.js +313 -18
- package/dist/cli/commands/publish.js.map +1 -1
- package/dist/cli/commands/pull.d.ts +7 -3
- package/dist/cli/commands/pull.d.ts.map +1 -1
- package/dist/cli/commands/pull.js +105 -13
- package/dist/cli/commands/pull.js.map +1 -1
- package/dist/cli/commands/receipt.d.ts +31 -0
- package/dist/cli/commands/receipt.d.ts.map +1 -0
- package/dist/cli/commands/receipt.js +92 -0
- package/dist/cli/commands/receipt.js.map +1 -0
- package/dist/cli/commands/test.d.ts +15 -0
- package/dist/cli/commands/test.d.ts.map +1 -0
- package/dist/cli/commands/test.js +176 -0
- package/dist/cli/commands/test.js.map +1 -0
- package/dist/cli/index.js +19 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/testjobs/index.d.ts +18 -0
- package/dist/cli/testjobs/index.d.ts.map +1 -0
- package/dist/cli/testjobs/index.js +45 -0
- package/dist/cli/testjobs/index.js.map +1 -0
- package/dist/cli/testjobs/templates/automation.d.ts +3 -0
- package/dist/cli/testjobs/templates/automation.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/automation.js +32 -0
- package/dist/cli/testjobs/templates/automation.js.map +1 -0
- package/dist/cli/testjobs/templates/code-review.d.ts +3 -0
- package/dist/cli/testjobs/templates/code-review.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/code-review.js +27 -0
- package/dist/cli/testjobs/templates/code-review.js.map +1 -0
- package/dist/cli/testjobs/templates/content-writing.d.ts +3 -0
- package/dist/cli/testjobs/templates/content-writing.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/content-writing.js +20 -0
- package/dist/cli/testjobs/templates/content-writing.js.map +1 -0
- package/dist/cli/testjobs/templates/data-analysis.d.ts +3 -0
- package/dist/cli/testjobs/templates/data-analysis.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/data-analysis.js +34 -0
- package/dist/cli/testjobs/templates/data-analysis.js.map +1 -0
- package/dist/cli/testjobs/templates/generic.d.ts +3 -0
- package/dist/cli/testjobs/templates/generic.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/generic.js +17 -0
- package/dist/cli/testjobs/templates/generic.js.map +1 -0
- package/dist/cli/testjobs/templates/security-audit.d.ts +3 -0
- package/dist/cli/testjobs/templates/security-audit.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/security-audit.js +30 -0
- package/dist/cli/testjobs/templates/security-audit.js.map +1 -0
- package/dist/cli/testjobs/templates/testing.d.ts +3 -0
- package/dist/cli/testjobs/templates/testing.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/testing.js +29 -0
- package/dist/cli/testjobs/templates/testing.js.map +1 -0
- package/dist/cli/testjobs/templates/translation.d.ts +3 -0
- package/dist/cli/testjobs/templates/translation.d.ts.map +1 -0
- package/dist/cli/testjobs/templates/translation.js +16 -0
- package/dist/cli/testjobs/templates/translation.js.map +1 -0
- package/dist/cli/testjobs/types.d.ts +16 -0
- package/dist/cli/testjobs/types.d.ts.map +1 -0
- package/dist/cli/testjobs/types.js +8 -0
- package/dist/cli/testjobs/types.js.map +1 -0
- package/dist/cli/utils/client.js +1 -1
- package/dist/cli/utils/client.js.map +1 -1
- package/dist/cli/utils/config.d.ts +12 -0
- package/dist/cli/utils/config.d.ts.map +1 -1
- package/dist/cli/utils/config.js +29 -2
- package/dist/cli/utils/config.js.map +1 -1
- package/dist/config/agirailsmd.d.ts +1 -1
- package/dist/config/agirailsmd.d.ts.map +1 -1
- package/dist/config/agirailsmd.js +3 -0
- package/dist/config/agirailsmd.js.map +1 -1
- package/dist/config/agirailsmdV4.d.ts +82 -0
- package/dist/config/agirailsmdV4.d.ts.map +1 -0
- package/dist/config/agirailsmdV4.js +260 -0
- package/dist/config/agirailsmdV4.js.map +1 -0
- package/dist/config/defaults.d.ts +50 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +77 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/networks.d.ts +1 -0
- package/dist/config/networks.d.ts.map +1 -1
- package/dist/config/networks.js +16 -13
- package/dist/config/networks.js.map +1 -1
- package/dist/config/publishPipeline.d.ts.map +1 -1
- package/dist/config/publishPipeline.js +4 -0
- package/dist/config/publishPipeline.js.map +1 -1
- package/dist/config/slugUtils.d.ts +28 -0
- package/dist/config/slugUtils.d.ts.map +1 -0
- package/dist/config/slugUtils.js +51 -0
- package/dist/config/slugUtils.js.map +1 -0
- package/dist/level0/ServiceDirectory.d.ts +6 -6
- package/dist/level0/ServiceDirectory.js +11 -11
- package/dist/level0/ServiceDirectory.js.map +1 -1
- package/dist/level1/Agent.d.ts +10 -10
- package/dist/level1/Agent.d.ts.map +1 -1
- package/dist/level1/Agent.js +45 -29
- package/dist/level1/Agent.js.map +1 -1
- package/dist/level1/pricing/PriceCalculator.js +2 -2
- package/dist/level1/pricing/PriceCalculator.js.map +1 -1
- package/dist/negotiation/BuyerOrchestrator.d.ts +108 -0
- package/dist/negotiation/BuyerOrchestrator.d.ts.map +1 -0
- package/dist/negotiation/BuyerOrchestrator.js +377 -0
- package/dist/negotiation/BuyerOrchestrator.js.map +1 -0
- package/dist/negotiation/DecisionEngine.d.ts +44 -0
- package/dist/negotiation/DecisionEngine.d.ts.map +1 -0
- package/dist/negotiation/DecisionEngine.js +116 -0
- package/dist/negotiation/DecisionEngine.js.map +1 -0
- package/dist/negotiation/PolicyEngine.d.ts +126 -0
- package/dist/negotiation/PolicyEngine.d.ts.map +1 -0
- package/dist/negotiation/PolicyEngine.js +265 -0
- package/dist/negotiation/PolicyEngine.js.map +1 -0
- package/dist/negotiation/SessionStore.d.ts +57 -0
- package/dist/negotiation/SessionStore.d.ts.map +1 -0
- package/dist/negotiation/SessionStore.js +179 -0
- package/dist/negotiation/SessionStore.js.map +1 -0
- package/dist/negotiation/index.d.ts +9 -0
- package/dist/negotiation/index.d.ts.map +1 -0
- package/dist/negotiation/index.js +12 -0
- package/dist/negotiation/index.js.map +1 -0
- package/dist/protocol/ACTPKernel.d.ts +32 -4
- package/dist/protocol/ACTPKernel.d.ts.map +1 -1
- package/dist/protocol/ACTPKernel.js +70 -16
- package/dist/protocol/ACTPKernel.js.map +1 -1
- package/dist/protocol/AgentRegistry.js +2 -2
- package/dist/protocol/AgentRegistry.js.map +1 -1
- package/dist/protocol/DIDResolver.js +2 -2
- package/dist/protocol/DIDResolver.js.map +1 -1
- package/dist/protocol/EASHelper.d.ts +2 -2
- package/dist/protocol/EASHelper.js +5 -5
- package/dist/protocol/EASHelper.js.map +1 -1
- package/dist/protocol/EscrowVault.d.ts +2 -2
- package/dist/protocol/EscrowVault.js +4 -4
- package/dist/protocol/EscrowVault.js.map +1 -1
- package/dist/protocol/EventMonitor.d.ts +4 -4
- package/dist/protocol/EventMonitor.js +5 -5
- package/dist/protocol/EventMonitor.js.map +1 -1
- package/dist/protocol/MessageSigner.d.ts +5 -5
- package/dist/protocol/MessageSigner.js +8 -8
- package/dist/protocol/MessageSigner.js.map +1 -1
- package/dist/protocol/ProofGenerator.d.ts +4 -4
- package/dist/protocol/ProofGenerator.js +6 -6
- package/dist/protocol/ProofGenerator.js.map +1 -1
- package/dist/runtime/BlockchainRuntime.d.ts +36 -14
- package/dist/runtime/BlockchainRuntime.d.ts.map +1 -1
- package/dist/runtime/BlockchainRuntime.js +78 -45
- package/dist/runtime/BlockchainRuntime.js.map +1 -1
- package/dist/runtime/IACTPRuntime.d.ts +12 -1
- package/dist/runtime/IACTPRuntime.d.ts.map +1 -1
- package/dist/runtime/MockRuntime.d.ts +29 -9
- package/dist/runtime/MockRuntime.d.ts.map +1 -1
- package/dist/runtime/MockRuntime.js +88 -24
- package/dist/runtime/MockRuntime.js.map +1 -1
- package/dist/runtime/MockStateManager.js +2 -2
- package/dist/runtime/MockStateManager.js.map +1 -1
- package/dist/runtime/types/MockState.d.ts +1 -1
- package/dist/settle/SettleOnInteract.d.ts +32 -0
- package/dist/settle/SettleOnInteract.d.ts.map +1 -0
- package/dist/settle/SettleOnInteract.js +74 -0
- package/dist/settle/SettleOnInteract.js.map +1 -0
- package/dist/types/erc8004.d.ts +2 -2
- package/dist/types/erc8004.d.ts.map +1 -1
- package/dist/types/erc8004.js +4 -1
- package/dist/types/erc8004.js.map +1 -1
- package/dist/types/state.d.ts +1 -1
- package/dist/types/state.js +1 -1
- package/dist/types/transaction.d.ts +4 -0
- package/dist/types/transaction.d.ts.map +1 -1
- package/dist/utils/ErrorRecoveryGuide.d.ts +1 -1
- package/dist/utils/ErrorRecoveryGuide.js +1 -1
- package/dist/utils/Helpers.d.ts +6 -6
- package/dist/utils/Helpers.js +7 -7
- package/dist/utils/Helpers.js.map +1 -1
- package/dist/utils/IPFSClient.d.ts +7 -7
- package/dist/utils/IPFSClient.js +9 -9
- package/dist/utils/IPFSClient.js.map +1 -1
- package/dist/utils/Logger.d.ts +4 -4
- package/dist/utils/Logger.js +8 -8
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/NonceManager.d.ts +9 -9
- package/dist/utils/NonceManager.js +19 -19
- package/dist/utils/NonceManager.js.map +1 -1
- package/dist/utils/RateLimiter.d.ts +10 -10
- package/dist/utils/RateLimiter.d.ts.map +1 -1
- package/dist/utils/RateLimiter.js +22 -22
- package/dist/utils/RateLimiter.js.map +1 -1
- package/dist/utils/ReceivedNonceTracker.d.ts +10 -10
- package/dist/utils/ReceivedNonceTracker.js +20 -20
- package/dist/utils/ReceivedNonceTracker.js.map +1 -1
- package/dist/utils/SDKLifecycle.d.ts +3 -3
- package/dist/utils/SDKLifecycle.js +7 -7
- package/dist/utils/SDKLifecycle.js.map +1 -1
- package/dist/utils/SecureNonce.d.ts +1 -1
- package/dist/utils/SecureNonce.js +1 -1
- package/dist/utils/Semaphore.d.ts +2 -2
- package/dist/utils/Semaphore.js +2 -2
- package/dist/utils/UsedAttestationTracker.d.ts +13 -13
- package/dist/utils/UsedAttestationTracker.js +20 -20
- package/dist/utils/UsedAttestationTracker.js.map +1 -1
- package/dist/utils/security.d.ts +3 -3
- package/dist/utils/security.js +4 -4
- package/dist/utils/security.js.map +1 -1
- package/dist/utils/validation.d.ts +4 -4
- package/dist/utils/validation.js +9 -9
- package/dist/utils/validation.js.map +1 -1
- package/dist/wallet/AutoWalletProvider.d.ts.map +1 -1
- package/dist/wallet/AutoWalletProvider.js +2 -1
- package/dist/wallet/AutoWalletProvider.js.map +1 -1
- package/dist/wallet/IWalletProvider.d.ts +2 -0
- package/dist/wallet/IWalletProvider.d.ts.map +1 -1
- package/dist/wallet/aa/TransactionBatcher.d.ts +22 -2
- package/dist/wallet/aa/TransactionBatcher.d.ts.map +1 -1
- package/dist/wallet/aa/TransactionBatcher.js +51 -9
- package/dist/wallet/aa/TransactionBatcher.js.map +1 -1
- package/package.json +6 -12
package/dist/level1/Agent.js
CHANGED
|
@@ -86,14 +86,14 @@ class Agent extends events_1.EventEmitter {
|
|
|
86
86
|
/**
|
|
87
87
|
* Active jobs
|
|
88
88
|
*
|
|
89
|
-
*
|
|
89
|
+
*Security: Changed from Map to LRUCache to prevent unbounded growth
|
|
90
90
|
* Maximum 1000 active jobs with LRU eviction
|
|
91
91
|
*/
|
|
92
92
|
this.activeJobs = new security_1.LRUCache(1000);
|
|
93
93
|
/**
|
|
94
94
|
* Processed job IDs (for deduplication)
|
|
95
95
|
*
|
|
96
|
-
*
|
|
96
|
+
*Security: Track jobs we've attempted to process
|
|
97
97
|
* This prevents race conditions where the same job is processed multiple times
|
|
98
98
|
* before the state transition completes
|
|
99
99
|
*/
|
|
@@ -101,7 +101,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
101
101
|
/**
|
|
102
102
|
* Processing locks (for atomic locking)
|
|
103
103
|
*
|
|
104
|
-
*
|
|
104
|
+
*Security: Mutex for job processing.
|
|
105
105
|
* When we see a job, we IMMEDIATELY add to this set (atomic in single-threaded JS).
|
|
106
106
|
* This prevents race conditions where two poll cycles both pass the processedJobs.has()
|
|
107
107
|
* check before either calls processedJobs.set().
|
|
@@ -131,7 +131,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
131
131
|
if (!config.name) {
|
|
132
132
|
throw new errors_1.ServiceConfigError('name', 'Agent name is required');
|
|
133
133
|
}
|
|
134
|
-
//
|
|
134
|
+
// Security: Use dedicated AGIRAILS directory as base
|
|
135
135
|
// This prevents writes anywhere in the project directory
|
|
136
136
|
const AGIRAILS_BASE = path.join(os.homedir(), '.agirails');
|
|
137
137
|
// Ensure base directory exists
|
|
@@ -156,7 +156,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
156
156
|
source: `Agent:${config.name}`,
|
|
157
157
|
minLevel: config.logging?.level || 'info',
|
|
158
158
|
});
|
|
159
|
-
//
|
|
159
|
+
// Security: Initialize concurrency semaphore
|
|
160
160
|
// Default to 10 concurrent jobs if not specified
|
|
161
161
|
const maxConcurrency = config.behavior?.concurrency || 10;
|
|
162
162
|
this.concurrencySemaphore = new Semaphore_1.Semaphore(maxConcurrency);
|
|
@@ -289,7 +289,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
289
289
|
if (!config.name) {
|
|
290
290
|
throw new errors_1.ServiceConfigError('name', 'Service name is required');
|
|
291
291
|
}
|
|
292
|
-
//
|
|
292
|
+
// Security: Validate service name to prevent injection
|
|
293
293
|
try {
|
|
294
294
|
config.name = (0, security_1.validateServiceName)(config.name);
|
|
295
295
|
}
|
|
@@ -350,7 +350,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
350
350
|
/**
|
|
351
351
|
* Active jobs
|
|
352
352
|
*
|
|
353
|
-
*
|
|
353
|
+
*Security: Now uses LRUCache.values() iterator.
|
|
354
354
|
* Returns a snapshot of currently active jobs.
|
|
355
355
|
*/
|
|
356
356
|
get jobs() {
|
|
@@ -460,7 +460,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
460
460
|
/**
|
|
461
461
|
* Poll for new jobs
|
|
462
462
|
*
|
|
463
|
-
*
|
|
463
|
+
* Security notes:
|
|
464
464
|
* - C-1: Race condition prevention using processedJobs deduplication
|
|
465
465
|
* - C-2: Memory leak prevention using LRUCache
|
|
466
466
|
* - H-1: DoS prevention by filtering transactions before loading all
|
|
@@ -476,7 +476,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
476
476
|
return; // Agent not started yet
|
|
477
477
|
}
|
|
478
478
|
try {
|
|
479
|
-
//
|
|
479
|
+
// Security: Use filtered query instead of getAllTransactions
|
|
480
480
|
// This prevents DoS via memory exhaustion by only fetching relevant transactions
|
|
481
481
|
let pendingJobs = [];
|
|
482
482
|
// Check if runtime has the filtered query method
|
|
@@ -495,7 +495,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
495
495
|
// Process each pending job
|
|
496
496
|
for (const tx of pendingJobs) {
|
|
497
497
|
try {
|
|
498
|
-
//
|
|
498
|
+
// Security: Check processingLocks first (atomic check)
|
|
499
499
|
// This prevents race conditions where two poll cycles both try to process
|
|
500
500
|
// the same job before either transitions the state
|
|
501
501
|
if (this.processingLocks.has(tx.id) || this.processedJobs.has(tx.id)) {
|
|
@@ -503,12 +503,12 @@ class Agent extends events_1.EventEmitter {
|
|
|
503
503
|
}
|
|
504
504
|
// IMMEDIATELY acquire lock (atomic in single-threaded JS)
|
|
505
505
|
this.processingLocks.add(tx.id);
|
|
506
|
-
//
|
|
506
|
+
// Security: Check if already in active jobs (LRUCache handles size limit)
|
|
507
507
|
if (this.activeJobs.has(tx.id)) {
|
|
508
508
|
this.processingLocks.delete(tx.id);
|
|
509
509
|
continue;
|
|
510
510
|
}
|
|
511
|
-
//
|
|
511
|
+
// Security: Verify this agent is authorized to accept this transaction
|
|
512
512
|
// Check that tx.provider matches our address (prevents unauthorized state transitions)
|
|
513
513
|
if (tx.provider !== this.address) {
|
|
514
514
|
this.logger.warn('Unauthorized transaction detected', {
|
|
@@ -536,7 +536,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
536
536
|
}
|
|
537
537
|
// Create Job object from transaction
|
|
538
538
|
const job = this.createJobFromTransaction(tx);
|
|
539
|
-
//
|
|
539
|
+
// Security: Add to active jobs (LRUCache prevents unbounded growth)
|
|
540
540
|
this.activeJobs.set(job.id, job);
|
|
541
541
|
// Link escrow immediately to transition out of INITIATED state
|
|
542
542
|
// This prevents polling from picking up this job again
|
|
@@ -587,7 +587,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
587
587
|
/**
|
|
588
588
|
* Find service handler for a transaction
|
|
589
589
|
*
|
|
590
|
-
*
|
|
590
|
+
*Security: Use exact field matching instead of substring search
|
|
591
591
|
* to prevent service routing spoofing attacks.
|
|
592
592
|
*
|
|
593
593
|
* Supports multiple formats (in priority order):
|
|
@@ -649,7 +649,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
649
649
|
/**
|
|
650
650
|
* Check if job should be auto-accepted
|
|
651
651
|
*
|
|
652
|
-
*
|
|
652
|
+
*Security: Added pricing strategy evaluation
|
|
653
653
|
* - Checks service-level filters (budget constraints)
|
|
654
654
|
* - Evaluates pricing strategy if configured
|
|
655
655
|
* - Only accepts jobs that meet pricing requirements
|
|
@@ -724,14 +724,30 @@ class Agent extends events_1.EventEmitter {
|
|
|
724
724
|
});
|
|
725
725
|
return false;
|
|
726
726
|
}
|
|
727
|
-
//
|
|
728
|
-
//
|
|
727
|
+
// Counter-offer: provider accepts at reduced margin (budget >= cost but < ideal price).
|
|
728
|
+
// ACTP invariant: tx.amount is immutable — escrow is always at buyer's original offer.
|
|
729
|
+
// The QUOTED proof documents the provider's ideal price for audit trail / transparency,
|
|
730
|
+
// but does NOT change the on-chain escrow amount.
|
|
729
731
|
if (calculation.decision === 'counter-offer') {
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
732
|
+
try {
|
|
733
|
+
const { keccak256, toUtf8Bytes, AbiCoder } = await Promise.resolve().then(() => __importStar(require('ethers')));
|
|
734
|
+
const providerIdealPrice = String(Math.round(calculation.price * 1000000)); // USDC base units
|
|
735
|
+
const quoteHash = keccak256(toUtf8Bytes(JSON.stringify({ txId: tx.id, providerIdealPrice, actualEscrow: tx.amount, provider: this.address })));
|
|
736
|
+
const proof = AbiCoder.defaultAbiCoder().encode(['bytes32'], [quoteHash]);
|
|
737
|
+
await this._client.runtime.transitionState(tx.id, 'QUOTED', proof);
|
|
738
|
+
this.logger.info('Counter-offer quoted (accepting at reduced margin)', {
|
|
739
|
+
txId: tx.id,
|
|
740
|
+
providerIdealPrice,
|
|
741
|
+
actualEscrow: tx.amount,
|
|
742
|
+
reason: calculation.reason,
|
|
743
|
+
});
|
|
744
|
+
// Don't auto-accept — buyer must linkEscrow after reviewing quote
|
|
745
|
+
return false;
|
|
746
|
+
}
|
|
747
|
+
catch (quoteError) {
|
|
748
|
+
this.logger.error('Counter-offer submission failed', { txId: tx.id }, quoteError);
|
|
749
|
+
return false;
|
|
750
|
+
}
|
|
735
751
|
}
|
|
736
752
|
}
|
|
737
753
|
catch (error) {
|
|
@@ -855,12 +871,12 @@ class Agent extends events_1.EventEmitter {
|
|
|
855
871
|
/**
|
|
856
872
|
* Process a job by invoking the handler
|
|
857
873
|
*
|
|
858
|
-
*
|
|
859
|
-
*
|
|
874
|
+
*Security: Always cleanup activeJobs on completion/failure
|
|
875
|
+
*Security: Uses semaphore to limit concurrent execution
|
|
860
876
|
*/
|
|
861
877
|
async processJob(job, handler) {
|
|
862
878
|
const startTime = Date.now();
|
|
863
|
-
//
|
|
879
|
+
// Security: Check concurrency limit before processing
|
|
864
880
|
// If semaphore is full, wait up to 30 seconds for a slot
|
|
865
881
|
const CONCURRENCY_TIMEOUT_MS = 30000;
|
|
866
882
|
try {
|
|
@@ -887,7 +903,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
887
903
|
const context = this.createJobContext(job);
|
|
888
904
|
// Invoke handler
|
|
889
905
|
const result = await handler(job, context);
|
|
890
|
-
//
|
|
906
|
+
// Security: Use ProofGenerator to create authenticated delivery proof
|
|
891
907
|
// This ensures the proof has proper structure with txId, contentHash, and timestamp
|
|
892
908
|
const proofGenerator = new ProofGenerator_1.ProofGenerator();
|
|
893
909
|
const deliverable = typeof result === 'string' ? result : JSON.stringify(result);
|
|
@@ -928,7 +944,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
928
944
|
// Transition to DELIVERED with dispute window proof
|
|
929
945
|
await this._client.runtime.transitionState(job.id, 'DELIVERED', disputeWindowProof);
|
|
930
946
|
}
|
|
931
|
-
//
|
|
947
|
+
// Security: Remove from active jobs on SUCCESS
|
|
932
948
|
this.activeJobs.delete(job.id);
|
|
933
949
|
// Update stats
|
|
934
950
|
this._stats.jobsCompleted++;
|
|
@@ -949,7 +965,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
949
965
|
this.emit('payment:received', job.budget);
|
|
950
966
|
}
|
|
951
967
|
catch (error) {
|
|
952
|
-
//
|
|
968
|
+
// Security: Remove from active jobs on FAILURE
|
|
953
969
|
this.activeJobs.delete(job.id);
|
|
954
970
|
this._stats.jobsFailed++;
|
|
955
971
|
this._stats.successRate =
|
|
@@ -958,7 +974,7 @@ class Agent extends events_1.EventEmitter {
|
|
|
958
974
|
this.emit('job:failed', job, error);
|
|
959
975
|
}
|
|
960
976
|
finally {
|
|
961
|
-
//
|
|
977
|
+
// Security: Always release semaphore permit
|
|
962
978
|
this.concurrencySemaphore.release();
|
|
963
979
|
}
|
|
964
980
|
}
|
package/dist/level1/Agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/level1/Agent.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mCAAsC;AACtC,2CAA6B;AAC7B,uCAAyB;AACzB,uCAAyB;AACzB,mCAAgC;AAChC,8CAA2C;AAC3C,iDAAuD;AAIvD,sCAAqF;AACrF,gDAAgF;AAChF,4CAAoD;AACpD,8CAA+C;AAC/C,kDAA+C;AAC/C,+DAA4D;AAyK5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,KAAM,SAAQ,qBAAY;IAwGrC;;;;OAIG;IACH,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAC;QA9FV;;WAEG;QACK,YAAO,GAAgB,MAAM,CAAC;QAOtC;;WAEG;QACK,aAAQ,GAAG,IAAI,GAAG,EAA0D,CAAC;QAErF;;;;;WAKG;QACK,eAAU,GAAG,IAAI,mBAAQ,CAAc,IAAI,CAAC,CAAC;QAErD;;;;;;WAMG;QACK,kBAAa,GAAG,IAAI,mBAAQ,CAAkB,KAAK,CAAC,CAAC;QAE7D;;;;;;;WAOG;QACK,oBAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAU5C;;WAEG;QACK,WAAM,GAAe;YAC3B,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,CAAC;SACf,CAAC;QAEF;;WAEG;QACK,aAAQ,GAAiB;YAC/B,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,GAAG;SACb,CAAC;QAyBA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACjE,CAAC;QAED,+DAA+D;QAC/D,yDAAyD;QACzD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;QAE3D,+BAA+B;QAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,4CAA4C;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,iEAAiE;gBACjE,MAAM,CAAC,cAAc,GAAG,IAAA,uBAAY,EAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;YAC7E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,2BAAkB,CAC1B,gBAAgB,EAChB,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;YACvB,MAAM,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE;YAC9B,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM;SAC1C,CAAC,CAAC;QAEH,4DAA4D;QAC5D,iDAAiD;QACjD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,oBAAoB,GAAG,IAAI,qBAAS,CAAC,cAAc,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;;;;;OAMG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1D,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtB,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;gBAC1E,MAAM,EAAE,UAAU,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;gBAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;gBACjF,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC9C,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,WAAW,KAAK,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,MAAM,uBAAU,CAAC,MAAM,CAAC;gBACrC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;gBAC9F,gBAAgB,EAAE,IAAI,CAAC,OAAO,IAAI,MAAM,IAAI,CAAC,eAAe,EAAE;gBAC9D,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;gBAC1C,UAAU,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE;gBACtC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,EAAE,CAAC;YAEpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtB,eAAe;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,kDAAkD;QAClD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc;QAEnD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,4EAA4E;IAC5E,uBAAuB;IACvB,4EAA4E;IAE5E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CACL,eAAuC,EACvC,OAAmB,EACnB,OAAgC;QAEhC,MAAM,MAAM,GACV,OAAO,eAAe,KAAK,QAAQ;YACjC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,EAAE;YACvC,CAAC,CAAC,eAAe,CAAC;QAEtB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QACnE,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,GAAG,IAAA,8BAAmB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,2BAAkB,CAC1B,MAAM,EACN,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClF,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,YAAY,MAAM,CAAC,IAAI,sBAAsB,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAwC;QACrE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;QAC7E,CAAC;QAED,oCAAoC;QACpC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QAEpE,8CAA8C;QAC9C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE;YACzC,GAAG,OAAO;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;QAEH,eAAe;QACf,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;QAEzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,aAAa;IACb,4EAA4E;IAE5E;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,OAAO;QACT,8DAA8D;QAC9D,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAC3B,OAAO;gBACL,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,GAAG;aACb,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,4CAA4C;YAC5C,IAAI,IAAI,GAAG,GAAG,CAAC;YACf,IAAI,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACzC,IAAI,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YAED,gDAAgD;YAChD,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAExB,IAAI,2BAA2B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,gDAAgD;gBAChD,MAAM,KAAK,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,yBAAyB,CACzE,IAAI,CAAC,OAAO,EACZ,SAAS,EAAE,aAAa;gBACxB,IAAI,CACL,CAAC;gBAEF,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;oBAExC,8EAA8E;oBAC9E,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,aAAa,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;wBACvF,MAAM,IAAI,MAAM,CAAC;oBACnB,CAAC;oBAED,yEAAyE;oBACzE,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACtD,OAAO,IAAI,MAAM,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,QAAQ,GAAG;gBACd,GAAG,EAAE,GAAG,EAAE,8CAA8C;gBACxD,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACzB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;aAC5B,CAAC;YAEF,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACvD,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAE5E;;OAEG;IACK,YAAY;QAClB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO,CAAC,kBAAkB;QAC5B,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,YAAY;QAC1C,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,eAAe,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACrC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,wBAAwB;QAClC,CAAC;QAED,IAAI,CAAC;YACH,uEAAuE;YACvE,iFAAiF;YACjF,IAAI,WAAW,GAAU,EAAE,CAAC;YAE5B,iDAAiD;YACjD,IAAI,2BAA2B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,uDAAuD;gBACvD,WAAW,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,yBAAyB,CACzE,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,GAAG,CACJ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,8DAA8D;gBAC9D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBACxE,WAAW,GAAG,eAAe,CAAC,MAAM,CAClC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,CACjE,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBACpC,WAAW,EAAE,WAAW,CAAC,MAAM;aAChC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,iEAAiE;oBACjE,0EAA0E;oBAC1E,mDAAmD;oBACnD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;wBACrE,SAAS;oBACX,CAAC;oBAED,0DAA0D;oBAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAEhC,oFAAoF;oBACpF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC/B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,iFAAiF;oBACjF,uFAAuF;oBACvF,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;4BACpD,IAAI,EAAE,EAAE,CAAC,EAAE;4BACX,gBAAgB,EAAE,IAAI,CAAC,OAAO;4BAC9B,cAAc,EAAE,EAAE,CAAC,QAAQ;yBAC5B,CAAC,CAAC;wBACH,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,gCAAgC;oBAChC,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;oBACnD,IAAI,CAAC,cAAc,EAAE,CAAC;wBACpB,8CAA8C;wBAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBACjE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,6BAA6B;oBAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;oBACrD,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC3D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,qCAAqC;oBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;oBAE9C,8EAA8E;oBAC9E,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBAEjC,+DAA+D;oBAC/D,uDAAuD;oBACvD,IAAI,CAAC;wBACH,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;4BAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBAED,8DAA8D;wBAC9D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;oBACvC,CAAC;oBAAC,OAAO,WAAW,EAAE,CAAC;wBACrB,kFAAkF;wBAClF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,WAAoB,CAAC,CAAC;wBAClF,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;4BAAS,CAAC;wBACT,0BAA0B;wBAC1B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBACrC,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAE1E,wEAAwE;oBACxE,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;wBAC9E,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC5B,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,+CAA+C;oBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;oBACnF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChC,uDAAuD;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8CAA8C;YAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,kBAAkB,CACxB,EAAO;QAEP,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC;QAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,aAAiC,CAAC;QAEtC,kEAAkE;QAClE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAI,YAAY,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC7D,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC;YACvC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,cAAc,GAAG,qBAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC3D,IAAI,cAAc,EAAE,CAAC;gBACnB,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC;YACzC,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACjD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,sEAAsE;QACtE,8EAA8E;QAC9E,IAAI,qBAAW,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6DAA6D,EAAE;gBAC/E,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK;aACvC,CAAC,CAAC;YACH,4CAA4C;YAC5C,6DAA6D;YAC7D,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,gEAAgE;QAChE,KAAK,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7D,gDAAgD;YAChD,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;gBAChC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,gBAAgB,CAAC,EAAO;QACpC,8CAA8C;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAEnD,yDAAyD;QACzD,IAAI,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAErD,gEAAgE;YAChE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,kBAAkB;gBAClB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;wBACtD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM;wBACN,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,kBAAkB;gBAClB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;wBACtD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM;wBACN,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,+BAA+B;gBAC/B,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACzD,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;oBAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACxC,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC3E,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;YACD,2CAA2C;iBACtC,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;gBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;gBAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7E,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,2BAA2B,GAAC,CAAC;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;YAE9C,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAEvE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;oBACvC,IAAI,EAAE,EAAE,CAAC,EAAE;oBACX,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,KAAK,EAAE,WAAW,CAAC,KAAK;oBACxB,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,MAAM,EAAE,WAAW,CAAC,aAAa;oBACjC,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,MAAM,EAAE,WAAW,CAAC,MAAM;iBAC3B,CAAC,CAAC;gBAEH,8CAA8C;gBAC9C,IAAI,WAAW,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;wBACnD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM,EAAE,WAAW,CAAC,MAAM;qBAC3B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,uEAAuE;gBACvE,yEAAyE;gBACzE,IAAI,WAAW,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE;wBACtE,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM,EAAE,WAAW,CAAC,MAAM;qBAC3B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,0DAA0D;gBAC1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;gBAChG,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC;QAEpD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gCAAgC;QAChC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,EAAO;QACtC,OAAO;YACL,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/B,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC;YAC7C,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,iCAAiC;YACzE,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;SACnC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,EAAO;QAChC,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACjD,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjD,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,qDAAqD;QACrD,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACpE,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,gDAAgD;QAChD,IAAI,OAAO,EAAE,CAAC,kBAAkB,KAAK,QAAQ,IAAI,EAAE,CAAC,kBAAkB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACnF,OAAO,EAAE,CAAC,kBAAkB,CAAC;QAC/B,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;OAMG;IACK,eAAe,CAAC,EAAO;QAC7B,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACjD,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzC,OAAO,MAAM,CAAC,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,sDAAsD;QACtD,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,EAAO;QAC7B,OAAO;YACL,aAAa,EAAE,EAAE,CAAC,EAAE;YACpB,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,aAAa,EAAE,EAAE,CAAC,aAAa;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,MAAc;QAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,OAAS,CAAC,CAAC,gCAAgC;IAC3E,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,UAAU,CAAC,GAAQ,EAAE,OAAmB;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,qEAAqE;QACrE,yDAAyD;QACzD,MAAM,sBAAsB,GAAG,KAAK,CAAC;QAErC,IAAI,CAAC;YACH,qDAAqD;YACrD,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,uCAAuC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACxD,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,gBAAgB;gBACxF,cAAc,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK;gBAC/C,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,WAAW;aACnD,CAAC,CAAC;YAEH,uDAAuD;YACvD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAElC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,OAAO,GAAG,CAAC,EAAE,yCAAyC,IAAI,CAAC,oBAAoB,CAAC,KAAK,yBAAyB;gBAC9G,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,qBAAqB;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAE3C,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE3C,uFAAuF;YACvF,oFAAoF;YACpF,MAAM,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACjF,MAAM,aAAa,GAAG,cAAc,CAAC,qBAAqB,CAAC;gBACzD,IAAI,EAAE,GAAG,CAAC,EAAE;gBACZ,WAAW;gBACX,QAAQ,EAAE;oBACR,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB;aACF,CAAC,CAAC;YAEH,kDAAkD;YAClD,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;gBACvC,GAAG,aAAa;gBAChB,MAAM,EAAE,0CAA0C;aACnD,CAAC,CAAC;YAEH,gEAAgE;YAChE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,iEAAiE;gBACjE,iEAAiE;gBACjE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAc,CAAC;gBAC5C,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;oBACzB,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;wBACvD,MAAM,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACtC,IAAI,EAAE,EAAE,CAAC;4BACP,EAAE,CAAC,aAAa,GAAG,iBAAiB,CAAC;wBACvC,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,4EAA4E;gBAC5E,2DAA2D;gBAC3D,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;gBAElE,uDAAuD;gBACvD,qGAAqG;gBACrG,MAAM,oBAAoB,GAAG,GAAG,CAAC,QAAQ,EAAE,aAAa,IAAI,MAAM,CAAC;gBACnE,MAAM,QAAQ,GAAG,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBACnD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAEhF,oDAAoD;gBACpD,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;YACtF,CAAC;YAED,yDAAyD;YACzD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE/B,eAAe;YACf,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,cAAc;gBACxB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;oBACzE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,WAAW;gBACrB,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACnF,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;YAEtC,cAAc;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;gBAChC,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,QAAQ;gBACR,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yDAAyD;YACzD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,WAAW;gBACrB,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAEnF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,2DAA2D;YAC3D,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,GAAQ;QAC/B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;QACrC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,cAAc,GAAsB,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,qCAAqC;QAEzD,OAAO;YACL,KAAK,EAAE,KAAK;YAEZ,QAAQ,CAAC,OAAe,EAAE,OAAgB;gBACxC,sBAAsB;gBACtB,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC;YAED,GAAG,EAAE;gBACH,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACrC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC;wBAC5C,kBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBACD,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACpC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;wBACtE,kBAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACpC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;wBAC9E,kBAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACrC,kBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;gBAClD,CAAC;aACF;YAED,KAAK,EAAE;gBACL,GAAG,CAAI,GAAW;oBAChB,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;gBACD,GAAG,CAAI,GAAW,EAAE,KAAQ;oBAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACxB,CAAC;aACF;YAED,IAAI,SAAS;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,QAAQ,CAAC,OAAmB;gBAC1B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;oBAC1D,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;iBACjC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC7C,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,wBAAe,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,wBAAe,CACvB,QAAQ,EACR,GAAG,IAAI,CAAC,OAAO,0EAA0E;gBACzF,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACpF,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACzD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC7D,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAClF,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC;oBACH,IAAI,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC5B,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,wBAAe,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,IAAI,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,wBAAe,CAAC,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA1rCD,sBA0rCC"}
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/level1/Agent.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mCAAsC;AACtC,2CAA6B;AAC7B,uCAAyB;AACzB,uCAAyB;AACzB,mCAAgC;AAChC,8CAA2C;AAC3C,iDAAuD;AAIvD,sCAAqF;AACrF,gDAAgF;AAChF,4CAAoD;AACpD,8CAA+C;AAC/C,kDAA+C;AAC/C,+DAA4D;AAyK5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,KAAM,SAAQ,qBAAY;IAwGrC;;;;OAIG;IACH,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAC;QA9FV;;WAEG;QACK,YAAO,GAAgB,MAAM,CAAC;QAOtC;;WAEG;QACK,aAAQ,GAAG,IAAI,GAAG,EAA0D,CAAC;QAErF;;;;;WAKG;QACK,eAAU,GAAG,IAAI,mBAAQ,CAAc,IAAI,CAAC,CAAC;QAErD;;;;;;WAMG;QACK,kBAAa,GAAG,IAAI,mBAAQ,CAAkB,KAAK,CAAC,CAAC;QAE7D;;;;;;;WAOG;QACK,oBAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAU5C;;WAEG;QACK,WAAM,GAAe;YAC3B,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,cAAc,EAAE,CAAC;YACjB,WAAW,EAAE,CAAC;SACf,CAAC;QAEF;;WAEG;QACK,aAAQ,GAAiB;YAC/B,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,GAAG;SACb,CAAC;QAyBA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACjE,CAAC;QAED,qDAAqD;QACrD,yDAAyD;QACzD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;QAE3D,+BAA+B;QAC/B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,4CAA4C;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,iEAAiE;gBACjE,MAAM,CAAC,cAAc,GAAG,IAAA,uBAAY,EAAC,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;YAC7E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,2BAAkB,CAC1B,gBAAgB,EAChB,4BAA4B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;YACvB,MAAM,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE;YAC9B,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM;SAC1C,CAAC,CAAC;QAEH,6CAA6C;QAC7C,iDAAiD;QACjD,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,oBAAoB,GAAG,IAAI,qBAAS,CAAC,cAAc,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;;;;;OAMG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1D,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtB,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;gBAC1E,MAAM,EAAE,UAAU,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;gBAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;gBACjF,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC9C,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,WAAW,KAAK,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,IAAI,CAAC,OAAO,GAAG,MAAM,uBAAU,CAAC,MAAM,CAAC;gBACrC,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;gBAC9F,gBAAgB,EAAE,IAAI,CAAC,OAAO,IAAI,MAAM,IAAI,CAAC,eAAe,EAAE;gBAC9D,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;gBAC1C,UAAU,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE;gBACtC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,EAAE,CAAC;YAEpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtB,eAAe;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,kDAAkD;QAClD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc;QAEnD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,4EAA4E;IAC5E,uBAAuB;IACvB,4EAA4E;IAE5E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CACL,eAAuC,EACvC,OAAmB,EACnB,OAAgC;QAEhC,MAAM,MAAM,GACV,OAAO,eAAe,KAAK,QAAQ;YACjC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,OAAO,EAAE;YACvC,CAAC,CAAC,eAAe,CAAC;QAEtB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;QACnE,CAAC;QAED,uDAAuD;QACvD,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,GAAG,IAAA,8BAAmB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,2BAAkB,CAC1B,MAAM,EACN,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClF,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,2BAAkB,CAAC,MAAM,EAAE,YAAY,MAAM,CAAC,IAAI,sBAAsB,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAwC;QACrE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,4BAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;QAC7E,CAAC;QAED,oCAAoC;QACpC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QAEpE,8CAA8C;QAC9C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE;YACzC,GAAG,OAAO;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;QAEH,eAAe;QACf,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;QAEzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,aAAa;IACb,4EAA4E;IAE5E;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,OAAO;QACT,8DAA8D;QAC9D,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YAC3B,OAAO;gBACL,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,GAAG;aACb,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,4CAA4C;YAC5C,IAAI,IAAI,GAAG,GAAG,CAAC;YACf,IAAI,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACzC,IAAI,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YAED,gDAAgD;YAChD,IAAI,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAExB,IAAI,2BAA2B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,gDAAgD;gBAChD,MAAM,KAAK,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,yBAAyB,CACzE,IAAI,CAAC,OAAO,EACZ,SAAS,EAAE,aAAa;gBACxB,IAAI,CACL,CAAC;gBAEF,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;oBACvB,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;oBAExC,8EAA8E;oBAC9E,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,aAAa,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;wBACvF,MAAM,IAAI,MAAM,CAAC;oBACnB,CAAC;oBAED,yEAAyE;oBACzE,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACtD,OAAO,IAAI,MAAM,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC,QAAQ,GAAG;gBACd,GAAG,EAAE,GAAG,EAAE,8CAA8C;gBACxD,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACzB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;aAC5B,CAAC;YAEF,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACvD,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAE5E;;OAEG;IACK,YAAY;QAClB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO,CAAC,kBAAkB;QAC5B,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,CAAC,YAAY;QAC1C,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,eAAe,CAAC,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACrC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,wBAAwB;QAClC,CAAC;QAED,IAAI,CAAC;YACH,6DAA6D;YAC7D,iFAAiF;YACjF,IAAI,WAAW,GAAU,EAAE,CAAC;YAE5B,iDAAiD;YACjD,IAAI,2BAA2B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACxD,uDAAuD;gBACvD,WAAW,GAAG,MAAO,IAAI,CAAC,OAAO,CAAC,OAAe,CAAC,yBAAyB,CACzE,IAAI,CAAC,OAAO,EACZ,WAAW,EACX,GAAG,CACJ,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,8DAA8D;gBAC9D,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBACxE,WAAW,GAAG,eAAe,CAAC,MAAM,CAClC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,CACjE,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;gBACpC,WAAW,EAAE,WAAW,CAAC,MAAM;aAChC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,uDAAuD;oBACvD,0EAA0E;oBAC1E,mDAAmD;oBACnD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;wBACrE,SAAS;oBACX,CAAC;oBAED,0DAA0D;oBAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAEhC,0EAA0E;oBAC1E,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC/B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,uEAAuE;oBACvE,uFAAuF;oBACvF,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;4BACpD,IAAI,EAAE,EAAE,CAAC,EAAE;4BACX,gBAAgB,EAAE,IAAI,CAAC,OAAO;4BAC9B,cAAc,EAAE,EAAE,CAAC,QAAQ;yBAC5B,CAAC,CAAC;wBACH,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,gCAAgC;oBAChC,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;oBACnD,IAAI,CAAC,cAAc,EAAE,CAAC;wBACpB,8CAA8C;wBAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBACjE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,6BAA6B;oBAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;oBACrD,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC3D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;oBAED,qCAAqC;oBACrC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;oBAE9C,oEAAoE;oBACpE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBAEjC,+DAA+D;oBAC/D,uDAAuD;oBACvD,IAAI,CAAC;wBACH,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;4BAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBAED,8DAA8D;wBAC9D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;oBACvC,CAAC;oBAAC,OAAO,WAAW,EAAE,CAAC;wBACrB,kFAAkF;wBAClF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,WAAoB,CAAC,CAAC;wBAClF,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACnC,SAAS;oBACX,CAAC;4BAAS,CAAC;wBACT,0BAA0B;wBAC1B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBACrC,CAAC;oBAED,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAE1E,wEAAwE;oBACxE,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;wBAC9E,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC5B,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,+CAA+C;oBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;oBACnF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChC,uDAAuD;YACzD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8CAA8C;YAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,kBAAkB,CACxB,EAAO;QAEP,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC;QAC1C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,aAAiC,CAAC;QAEtC,kEAAkE;QAClE,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC7C,IAAI,YAAY,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC7D,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC;YACvC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,cAAc,GAAG,qBAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC3D,IAAI,cAAc,EAAE,CAAC;gBACnB,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC;YACzC,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACjD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,sEAAsE;QACtE,8EAA8E;QAC9E,IAAI,qBAAW,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6DAA6D,EAAE;gBAC/E,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK;aACvC,CAAC,CAAC;YACH,4CAA4C;YAC5C,6DAA6D;YAC7D,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,gEAAgE;QAChE,KAAK,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7D,gDAAgD;YAChD,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;gBAChC,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,gBAAgB,CAAC,EAAO;QACpC,8CAA8C;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAEnD,yDAAyD;QACzD,IAAI,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAErD,gEAAgE;YAChE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,kBAAkB;gBAClB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;wBACtD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM;wBACN,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,kBAAkB;gBAClB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oBAChE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE;wBACtD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM;wBACN,SAAS,EAAE,MAAM,CAAC,SAAS;qBAC5B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,+BAA+B;gBAC/B,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACzD,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;oBAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACxC,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC3E,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;YACD,2CAA2C;iBACtC,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;gBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;gBAC9C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7E,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,2BAA2B,GAAC,CAAC;YACrE,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;YAE9C,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAEvE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE;oBACvC,IAAI,EAAE,EAAE,CAAC,EAAE;oBACX,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,KAAK,EAAE,WAAW,CAAC,KAAK;oBACxB,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,MAAM,EAAE,WAAW,CAAC,aAAa;oBACjC,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,MAAM,EAAE,WAAW,CAAC,MAAM;iBAC3B,CAAC,CAAC;gBAEH,8CAA8C;gBAC9C,IAAI,WAAW,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;wBACnD,IAAI,EAAE,EAAE,CAAC,EAAE;wBACX,MAAM,EAAE,WAAW,CAAC,MAAM;qBAC3B,CAAC,CAAC;oBACH,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,wFAAwF;gBACxF,uFAAuF;gBACvF,wFAAwF;gBACxF,kDAAkD;gBAClD,IAAI,WAAW,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,wDAAa,QAAQ,GAAC,CAAC;wBACpE,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,GAAG,OAAS,CAAC,CAAC,CAAC,CAAC,kBAAkB;wBAChG,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CACrC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,kBAAkB,EAAE,YAAY,EAAE,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CACrG,CAAC,CAAC;wBACH,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC1E,MAAM,IAAI,CAAC,OAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;wBAEpE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,EAAE;4BACrE,IAAI,EAAE,EAAE,CAAC,EAAE;4BACX,kBAAkB;4BAClB,YAAY,EAAE,EAAE,CAAC,MAAM;4BACvB,MAAM,EAAE,WAAW,CAAC,MAAM;yBAC3B,CAAC,CAAC;wBACH,kEAAkE;wBAClE,OAAO,KAAK,CAAC;oBACf,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,UAAmB,CAAC,CAAC;wBAC3F,OAAO,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,0DAA0D;gBAC1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;gBAChG,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC;QAEpD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gCAAgC;QAChC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,EAAO;QACtC,OAAO;YACL,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/B,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC;YAC7C,QAAQ,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,iCAAiC;YACzE,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;SACnC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,kBAAkB,CAAC,EAAO;QAChC,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC3B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACjD,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjD,OAAO,MAAM,CAAC,OAAO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,qDAAqD;QACrD,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACpE,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,gDAAgD;QAChD,IAAI,OAAO,EAAE,CAAC,kBAAkB,KAAK,QAAQ,IAAI,EAAE,CAAC,kBAAkB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACnF,OAAO,EAAE,CAAC,kBAAkB,CAAC;QAC/B,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;OAMG;IACK,eAAe,CAAC,EAAO;QAC7B,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACjD,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzC,OAAO,MAAM,CAAC,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QAED,sDAAsD;QACtD,MAAM,WAAW,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,EAAO;QAC7B,OAAO;YACL,aAAa,EAAE,EAAE,CAAC,EAAE;YACpB,SAAS,EAAE,EAAE,CAAC,SAAS;YACvB,aAAa,EAAE,EAAE,CAAC,aAAa;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,MAAc;QAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,OAAS,CAAC,CAAC,gCAAgC;IAC3E,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,UAAU,CAAC,GAAQ,EAAE,OAAmB;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,sDAAsD;QACtD,yDAAyD;QACzD,MAAM,sBAAsB,GAAG,KAAK,CAAC;QAErC,IAAI,CAAC;YACH,qDAAqD;YACrD,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,uCAAuC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACxD,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,gBAAgB;gBACxF,cAAc,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK;gBAC/C,WAAW,EAAE,IAAI,CAAC,oBAAoB,CAAC,WAAW;aACnD,CAAC,CAAC;YAEH,uDAAuD;YACvD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAElC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,OAAO,GAAG,CAAC,EAAE,yCAAyC,IAAI,CAAC,oBAAoB,CAAC,KAAK,yBAAyB;gBAC9G,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,qBAAqB;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAE3C,iBAAiB;YACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAE3C,sEAAsE;YACtE,oFAAoF;YACpF,MAAM,cAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACjF,MAAM,aAAa,GAAG,cAAc,CAAC,qBAAqB,CAAC;gBACzD,IAAI,EAAE,GAAG,CAAC,EAAE;gBACZ,WAAW;gBACX,QAAQ,EAAE;oBACR,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB;aACF,CAAC,CAAC;YAEH,kDAAkD;YAClD,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC;gBACvC,GAAG,aAAa;gBAChB,MAAM,EAAE,0CAA0C;aACnD,CAAC,CAAC;YAEH,gEAAgE;YAChE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,iEAAiE;gBACjE,iEAAiE;gBACjE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAc,CAAC;gBAC5C,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;oBACzB,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;wBACvD,MAAM,EAAE,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACtC,IAAI,EAAE,EAAE,CAAC;4BACP,EAAE,CAAC,aAAa,GAAG,iBAAiB,CAAC;wBACvC,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,4EAA4E;gBAC5E,2DAA2D;gBAC3D,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;gBAElE,uDAAuD;gBACvD,qGAAqG;gBACrG,MAAM,oBAAoB,GAAG,GAAG,CAAC,QAAQ,EAAE,aAAa,IAAI,MAAM,CAAC;gBACnE,MAAM,QAAQ,GAAG,eAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBACnD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAEhF,oDAAoD;gBACpD,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;YACtF,CAAC;YAED,+CAA+C;YAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE/B,eAAe;YACf,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,cAAc;gBACxB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;oBACzE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,WAAW;gBACrB,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACnF,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;YAEtC,cAAc;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;gBAChC,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,QAAQ;gBACR,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+CAA+C;YAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,WAAW;gBACrB,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAEnF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,KAAc,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;gBAAS,CAAC;YACT,4CAA4C;YAC5C,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,GAAQ;QAC/B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;QACrC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,cAAc,GAAsB,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,qCAAqC;QAEzD,OAAO;YACL,KAAK,EAAE,KAAK;YAEZ,QAAQ,CAAC,OAAe,EAAE,OAAgB;gBACxC,sBAAsB;gBACtB,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC;YAED,GAAG,EAAE;gBACH,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACrC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,KAAK,OAAO,EAAE,CAAC;wBAC5C,kBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBACD,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACpC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;wBACtE,kBAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,IAAI,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACpC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;wBAC9E,kBAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,OAAe,EAAE,IAAU,EAAE,EAAE;oBACrC,kBAAS,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;gBAClD,CAAC;aACF;YAED,KAAK,EAAE;gBACL,GAAG,CAAI,GAAW;oBAChB,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;gBACD,GAAG,CAAI,GAAW,EAAE,KAAQ;oBAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACxB,CAAC;aACF;YAED,IAAI,SAAS;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,QAAQ,CAAC,OAAmB;gBAC1B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;oBAC1D,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;iBACjC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC7C,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,wBAAe,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,wBAAe,CACvB,QAAQ,EACR,GAAG,IAAI,CAAC,OAAO,0EAA0E;gBACzF,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACpF,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACzD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC7D,OAAO,IAAA,4BAAiB,EAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAClF,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC;oBACH,IAAI,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC5B,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,wBAAe,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,IAAI,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,wBAAe,CAAC,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA5sCD,sBA4sCC"}
|
|
@@ -200,7 +200,7 @@ function estimateUnits(job, unit) {
|
|
|
200
200
|
*/
|
|
201
201
|
function estimateApiCost(_api, _job) {
|
|
202
202
|
// MVP: Returns 0 (API costs tracked externally by agent)
|
|
203
|
-
//
|
|
203
|
+
// TODO: Integrate with LLM provider pricing APIs
|
|
204
204
|
// Example V2 implementation:
|
|
205
205
|
// const [provider, model] = api.split(':');
|
|
206
206
|
// if (provider === 'openai') {
|
|
@@ -231,7 +231,7 @@ exports.DEFAULT_PRICING_STRATEGY = {
|
|
|
231
231
|
behavior: {
|
|
232
232
|
belowPrice: 'counter-offer',
|
|
233
233
|
belowCost: 'reject',
|
|
234
|
-
maxNegotiationRounds:
|
|
234
|
+
maxNegotiationRounds: 10,
|
|
235
235
|
},
|
|
236
236
|
};
|
|
237
237
|
//# sourceMappingURL=PriceCalculator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PriceCalculator.js","sourceRoot":"","sources":["../../../src/level1/pricing/PriceCalculator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PriceCalculator.js","sourceRoot":"","sources":["../../../src/level1/pricing/PriceCalculator.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAKH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,SAAgB,cAAc,CAAC,QAAyB,EAAE,GAAQ;IAChE,sBAAsB;IACtB,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;IAEzC,0BAA0B;IAC1B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,KAAyB,CAAC;IAC9B,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvD,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAChD,CAAC;IAED,sDAAsD;IACtD,IAAI,OAA2B,CAAC;IAChC,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAClD,6BAA6B;IAC/B,CAAC;IAED,qCAAqC;IACrC,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IAEvD,4CAA4C;IAC5C,6DAA6D;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB;IAC5E,IAAI,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;IAErC,yBAAyB;IACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,wBAAwB;IAClE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC;IAC1C,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpD,qCAAqC;IACrC,MAAM,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC;IACjC,MAAM,aAAa,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,mDAAmD;IACnD,IAAI,QAA+C,CAAC;IACpD,IAAI,MAAc,CAAC;IAEnB,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;QACxB,yDAAyD;QACzD,QAAQ,GAAG,QAAQ,CAAC;QACpB,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QACnC,wDAAwD;QACxD,uCAAuC;QACvC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,EAAE,UAAU,IAAI,eAAe,CAAC;QAC5E,QAAQ,GAAG,kBAAkB,CAAC;QAC9B,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvH,CAAC;SAAM,CAAC;QACN,0CAA0C;QAC1C,uCAAuC;QACvC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,QAAQ,CAAC;QACnE,QAAQ,GAAG,iBAAiB,CAAC;QAC7B,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACrG,CAAC;IAED,OAAO;QACL,IAAI,EAAE,SAAS;QACf,KAAK;QACL,MAAM;QACN,aAAa;QACb,QAAQ;QACR,MAAM;QACN,SAAS,EAAE;YACT,QAAQ;YACR,QAAQ;YACR,KAAK;YACL,OAAO;SACR;KACF,CAAC;AACJ,CAAC;AAxED,wCAwEC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,aAAa,CAAC,GAAQ,EAAE,IAAY;IAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IAExB,QAAQ,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QAC3B,KAAK,MAAM;YACT,4BAA4B;YAC5B,IAAI,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;YAClF,CAAC;YACD,uCAAuC;YACvC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QAEnD,KAAK,OAAO;YACV,yCAAyC;YACzC,IAAI,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAErD,KAAK,WAAW,CAAC;QACjB,KAAK,MAAM;YACT,mBAAmB;YACnB,IAAI,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3B,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;QAEtC,KAAK,OAAO,CAAC;QACb,KAAK,KAAK;YACR,yBAAyB;YACzB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBACjC,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;YAC7B,CAAC;YACD,IAAI,KAAK,EAAE,KAAK,IAAI,KAAK,EAAE,QAAQ,EAAE,CAAC;gBACpC,OAAO,CAAC,CAAC;YACX,CAAC;YACD,OAAO,CAAC,CAAC,CAAC,qBAAqB;QAEjC,KAAK,QAAQ,CAAC;QACd,KAAK,KAAK;YACR,sBAAsB;YACtB,IAAI,OAAO,KAAK,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC,QAAQ,CAAC;YACxB,CAAC;YACD,IAAI,OAAO,KAAK,EAAE,eAAe,KAAK,QAAQ,EAAE,CAAC;gBAC/C,OAAO,KAAK,CAAC,eAAe,CAAC;YAC/B,CAAC;YACD,OAAO,CAAC,CAAC,CAAC,sBAAsB;QAElC,KAAK,SAAS,CAAC;QACf,KAAK,KAAK;YACR,2BAA2B;YAC3B,OAAO,CAAC,CAAC;QAEX;YACE,mCAAmC;YACnC,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,eAAe,CAAC,IAAY,EAAE,IAAS;IAC9C,yDAAyD;IACzD,iDAAiD;IAEjD,6BAA6B;IAC7B,4CAA4C;IAC5C,+BAA+B;IAC/B,qDAAqD;IACrD,sBAAsB;IACtB,kEAAkE;IAClE,uEAAuE;IACvE,OAAO;IACP,2EAA2E;IAC3E,IAAI;IAEJ,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACU,QAAA,wBAAwB,GAAoB;IACvD,IAAI,EAAE;QACJ,IAAI,EAAE,IAAI,EAAE,wBAAwB;KACrC;IACD,MAAM,EAAE,GAAG,EAAE,oBAAoB;IACjC,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE;QACR,UAAU,EAAE,eAAe;QAC3B,SAAS,EAAE,QAAQ;QACnB,oBAAoB,EAAE,EAAE;KACzB;CACF,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BuyerOrchestrator — Autonomous buyer-side negotiation orchestrator.
|
|
3
|
+
*
|
|
4
|
+
* Flow:
|
|
5
|
+
* 1. Discover candidates (via agirails.app API)
|
|
6
|
+
* 2. Score with DecisionEngine (weighted ranking)
|
|
7
|
+
* 3. Validate with PolicyEngine (5 guardrails)
|
|
8
|
+
* 4. For each candidate (up to rounds_max):
|
|
9
|
+
* a. createTransaction → INITIATED
|
|
10
|
+
* b. Poll for QUOTED state (within quote_ttl)
|
|
11
|
+
* c. Validate quote against policy
|
|
12
|
+
* d. Accept → linkEscrow → COMMITTED
|
|
13
|
+
* e. OR reject → try next candidate
|
|
14
|
+
* 5. Track everything via SessionStore
|
|
15
|
+
*
|
|
16
|
+
* Accepts ACTPClient for on-chain operations. Caller manages lifecycle.
|
|
17
|
+
*/
|
|
18
|
+
import { DiscoverParams } from '../api/agirailsApp';
|
|
19
|
+
import { BuyerPolicy } from './PolicyEngine';
|
|
20
|
+
import { IACTPRuntime } from '../runtime/IACTPRuntime';
|
|
21
|
+
export interface NegotiationResult {
|
|
22
|
+
success: boolean;
|
|
23
|
+
commerce_session_id: string;
|
|
24
|
+
actp_tx_id?: string;
|
|
25
|
+
selected_provider?: string;
|
|
26
|
+
rounds_used: number;
|
|
27
|
+
/** Why negotiation ended (settled, exhausted, budget_exceeded, etc.) */
|
|
28
|
+
reason: string;
|
|
29
|
+
/** Per-round details for traceability */
|
|
30
|
+
rounds: RoundResult[];
|
|
31
|
+
/** True if repeated identical prices were detected across rounds (price deadlock) */
|
|
32
|
+
deadlock_detected?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface RoundResult {
|
|
35
|
+
round: number;
|
|
36
|
+
provider_slug: string;
|
|
37
|
+
provider_address: string;
|
|
38
|
+
action: 'accepted' | 'rejected' | 'timeout' | 'error';
|
|
39
|
+
reason: string;
|
|
40
|
+
tx_id?: string;
|
|
41
|
+
/** Actual quoted price from on-chain (USDC float), if quote was received */
|
|
42
|
+
quoted_price?: number;
|
|
43
|
+
}
|
|
44
|
+
export interface OrchestratorConfig {
|
|
45
|
+
/** Override discover params (search, capability, etc.) */
|
|
46
|
+
discover?: Partial<DiscoverParams>;
|
|
47
|
+
/** Poll interval for checking quote state (ms). Default: 3000 */
|
|
48
|
+
pollIntervalMs?: number;
|
|
49
|
+
/** If true, run discovery + scoring but don't create transactions */
|
|
50
|
+
dryRun?: boolean;
|
|
51
|
+
/** Callback for progress events */
|
|
52
|
+
onProgress?: (event: ProgressEvent) => void;
|
|
53
|
+
}
|
|
54
|
+
export type ProgressEvent = {
|
|
55
|
+
type: 'discovery';
|
|
56
|
+
candidates: number;
|
|
57
|
+
} | {
|
|
58
|
+
type: 'scoring';
|
|
59
|
+
ranked: number;
|
|
60
|
+
} | {
|
|
61
|
+
type: 'round_start';
|
|
62
|
+
round: number;
|
|
63
|
+
provider: string;
|
|
64
|
+
} | {
|
|
65
|
+
type: 'waiting_quote';
|
|
66
|
+
txId: string;
|
|
67
|
+
ttlSeconds: number;
|
|
68
|
+
} | {
|
|
69
|
+
type: 'quote_received';
|
|
70
|
+
txId: string;
|
|
71
|
+
} | {
|
|
72
|
+
type: 'round_end';
|
|
73
|
+
round: number;
|
|
74
|
+
action: string;
|
|
75
|
+
reason: string;
|
|
76
|
+
} | {
|
|
77
|
+
type: 'complete';
|
|
78
|
+
success: boolean;
|
|
79
|
+
reason: string;
|
|
80
|
+
};
|
|
81
|
+
export declare class BuyerOrchestrator {
|
|
82
|
+
private policy;
|
|
83
|
+
private policyEngine;
|
|
84
|
+
private decisionEngine;
|
|
85
|
+
private sessionStore;
|
|
86
|
+
private runtime;
|
|
87
|
+
private requesterAddress;
|
|
88
|
+
constructor(policy: BuyerPolicy, runtime: IACTPRuntime, requesterAddress: string, actpDir?: string);
|
|
89
|
+
/**
|
|
90
|
+
* Execute the full negotiation flow.
|
|
91
|
+
*/
|
|
92
|
+
negotiate(config?: OrchestratorConfig): Promise<NegotiationResult>;
|
|
93
|
+
private _negotiate;
|
|
94
|
+
/**
|
|
95
|
+
* Poll until tx reaches one of the target states.
|
|
96
|
+
* Returns the reached state, or null on timeout/cancelled.
|
|
97
|
+
* Resilient to transient RPC errors (retries until deadline).
|
|
98
|
+
*/
|
|
99
|
+
private waitForState;
|
|
100
|
+
private sleep;
|
|
101
|
+
private mapToCandidateStats;
|
|
102
|
+
private findAgentAddress;
|
|
103
|
+
private findAgentPrice;
|
|
104
|
+
private findAgentReputation;
|
|
105
|
+
/** Convert a USDC amount (e.g. 0.80) to base units string (e.g. "800000") */
|
|
106
|
+
private toBaseUnits;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=BuyerOrchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BuyerOrchestrator.d.ts","sourceRoot":"","sources":["../../src/negotiation/BuyerOrchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAiC,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAgB,WAAW,EAAc,MAAM,gBAAgB,CAAC;AAGvE,OAAO,EAAE,YAAY,EAA2B,MAAM,yBAAyB,CAAC;AAMhF,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,iEAAiE;IACjE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mCAAmC;IACnC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC7C;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAM3D,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,gBAAgB,CAAS;gBAG/B,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,YAAY,EACrB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,MAAM;IAUlB;;OAEG;IACG,SAAS,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAoB9D,UAAU;IA0SxB;;;;OAIG;YACW,YAAY;IAwB1B,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,mBAAmB;IAI3B,6EAA6E;IAC7E,OAAO,CAAC,WAAW;CAGpB"}
|