@privacyscrubber/mcp-server 2.3.1 β†’ 2.3.3

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 CHANGED
@@ -18,13 +18,21 @@
18
18
  [![There's An AI For That](https://img.shields.io/badge/There's_An_AI_For_That-Live-06b6d4.svg)](https://theresanaiforthat.com/ai/privacy-scrubber/)
19
19
  [![Security: 100% Local](https://img.shields.io/badge/Security-100%25%20Local-emerald)](https://privacyscrubber.com)
20
20
  [![Parity: 100% Core Match](https://img.shields.io/badge/Parity-100%25%20Core%20Match-blueviolet)](https://privacyscrubber.com)
21
- [![Patent Pending](https://img.shields.io/badge/Patent-Pending%20(ILPO%20331905)-06b6d4.svg)](https://privacyscrubber.com/patents/)
21
+ [![Patent Pending](https://img.shields.io/badge/Patent-Pending%20(US%20%26%20Intl)-06b6d4.svg)](https://privacyscrubber.com/patents/)
22
+ [![Developer SDK](https://img.shields.io/badge/Developer%20SDK-$299%2Fmo%20Flat-06b6d4.svg)](https://privacyscrubber.com/sdk/?utm_source=mcp_readme)
23
+ [![TEAMS Plan](https://img.shields.io/badge/TEAMS-$99%2Fmo%20Flat-3b82f6.svg)](https://privacyscrubber.com/pricing?tier=teams&utm_source=mcp_readme)
22
24
  [![GitHub Stars](https://img.shields.io/github/stars/moxno/privacyscrubber-mcp?style=social)](https://github.com/moxno/privacyscrubber-mcp)
23
25
 
24
26
  **CISO-Approved Zero-Trust PII & Secrets Redaction MCP Server for Cursor, Windsurf, and Claude Desktop.**
25
27
  Locally scrubs PII, secrets, credentials, and custom regex rules from files and text contexts before they reach remote LLM providers to prevent API leaks and ensure HIPAA/SOC 2 compliance at the developer endpoint.
26
28
 
27
- > ⭐ **Support Zero-Trust Open Source:** If PrivacyScrubber protects your API keys and code from leaks, please **[Star this repository](https://github.com/moxno/privacyscrubber-mcp)** or run `gh repo star moxno/privacyscrubber-mcp` in your terminal!
29
+ > **Support Zero-Trust Open Source:** If PrivacyScrubber protects your API keys, source code, and developer credentials from model leaks, please **[Star this repository on GitHub](https://github.com/moxno/privacyscrubber-mcp)** or execute `gh repo star moxno/privacyscrubber-mcp`.
30
+
31
+ > **Direct Commercial Licensing & Production Infrastructure:**
32
+ > Looking to automate zero-trust PII redaction inside backend microservices, ETL pipelines, or LangChain/LlamaIndex agents?
33
+ > - **Developer SDK ($299/mo flat or $2,990/yr):** Unlimited internal backend nodes, zero network egress, <1ms in-memory latency. **[Subscribe to Developer SDK](https://privacyscrubber.com/pricing?tier=sdk&utm_source=mcp_readme)** | **[Technical Specs](https://privacyscrubber.com/sdk/?utm_source=mcp_readme)**
34
+ > - **TEAMS ($99/mo flat):** Unlimited team seats across your entire domain with cryptographic P2P session handoff. **[Deploy TEAMS Plan](https://privacyscrubber.com/pricing?tier=teams&utm_source=mcp_readme)**
35
+ > - **PRO ($15/mo or $110 Lifetime):** Single-seat unlimited throughput across all 30 vertical profiles. **[Get PRO License](https://privacyscrubber.com/pricing?tier=pro&utm_source=mcp_readme)**
28
36
 
29
37
  ---
30
38
 
@@ -56,7 +64,18 @@ Run the server directly without local installation:
56
64
  npx -y @privacyscrubber/mcp-server
57
65
  ```
58
66
 
59
- ### 3. Programmatic Node.js / TypeScript SDK (Lightweight Presidio Alternative)
67
+ ### 3. Instant Run with UVX (Python / PyPI)
68
+ Run the server directly inside Python agent workflows (CrewAI, LangChain, AutoGen, LlamaIndex):
69
+ ```bash
70
+ uvx privacyscrubber-mcp
71
+ ```
72
+ Or via pip:
73
+ ```bash
74
+ pip install privacyscrubber-mcp
75
+ privacyscrubber-mcp
76
+ ```
77
+
78
+ ### 4. Programmatic Node.js / TypeScript SDK (Lightweight Presidio Alternative)
60
79
  Need direct, in-memory zero-trust PII sanitization in your backend microservice, Next.js app, or RAG vector pipeline rather than an MCP server? Use our official zero-dependency SDK:
61
80
 
62
81
  ```bash
@@ -176,10 +195,10 @@ const engine = new PrivacyScrubberEngine({ defaultProfile: 'Dev' });
176
195
  const guardedTools = createGuardedTools(engine);
177
196
  ```
178
197
 
179
- > 🏒 **Enterprise & Production Licensing:**
180
- > - **Self-Serve Developer SDK ($299/mo flat or $2,990/yr):** Unlimited internal backend nodes, microservices, and RAG pipelines. [Developer SDK Specs & Pricing](https://privacyscrubber.com/sdk/?utm_source=mcp_readme)
181
- > - **PrivacyScrubber TEAMS ($99/mo flat):** Unlimited team seats, centralized policy enforcement, encrypted session handoff. [Deploy TEAMS](https://privacyscrubber.com/teams?utm_source=mcp_readme)
182
- > - **Enterprise Air-Gapped License:** On-premise source code distribution, zero-network custom models. [Contact Enterprise](https://privacyscrubber.com/enterprise?utm_source=mcp_readme)
198
+ > **Enterprise & Production Licensing:**
199
+ > - **Self-Serve Developer SDK ($299/mo flat or $2,990/yr):** Unlimited internal backend nodes, microservices, and RAG pipelines. **[Subscribe to Developer SDK](https://privacyscrubber.com/pricing?tier=sdk&utm_source=mcp_readme)** | **[Developer SDK Specs](https://privacyscrubber.com/sdk/?utm_source=mcp_readme)**
200
+ > - **PrivacyScrubber TEAMS ($99/mo flat):** Unlimited team seats, centralized policy enforcement, encrypted session handoff. **[Deploy TEAMS Plan](https://privacyscrubber.com/pricing?tier=teams&utm_source=mcp_readme)**
201
+ > - **Enterprise Air-Gapped License:** On-premise source code distribution, zero-network custom models. **[Contact Enterprise](https://privacyscrubber.com/enterprise?utm_source=mcp_readme)**
183
202
 
184
203
  #### πŸ›‘οΈ Architecture & Security Deep-Dive (Zero-Trust vs Cloud DLP)
185
204
 
@@ -195,7 +214,7 @@ When AI IDEs (Cursor, Claude Desktop, Windsurf) connect to model providers, deve
195
214
  - **IETF Specification**: [draft-sibiryakov-ztds-protocol-01](https://datatracker.ietf.org/doc/draft-sibiryakov-ztds-protocol/) β€” Revision 01 Β· 2026-09-23 Β· 13 pages
196
215
  - **CERN / Zenodo Foundation**: [DOI 10.5281/zenodo.22058770](https://doi.org/10.5281/zenodo.22058770)
197
216
  - **Center for Open Science (OSF)**: [DOI 10.17605/OSF.IO/5BYJF](https://doi.org/10.17605/OSF.IO/5BYJF)
198
- - **Patent Pending**: Israel Patent Office Application `IL 331905` (WIPO DAS Code: `B17B`)
217
+ - **Patent Pending**: U.S. & International Patents Pending (Paris Convention / PCT Priority)
199
218
 
200
219
  ---
201
220
 
@@ -427,19 +446,23 @@ Looking for real-time protection directly inside your web browser?
427
446
 
428
447
  By default, the server runs under the **Free Tier** (restricted to 15,000 characters per request and the basic `General` PII profile). To unlock 30 specialized engineering, medical, legal, and financial PII profiles, as well as team-wide custom rules, you can purchase a commercial license.
429
448
 
430
- ### Feature Comparison
449
+ ### Commercial Plan & Feature Comparison
431
450
 
432
- | Feature | Free Tier | PRO Tier | TEAMS Tier |
433
- | :--- | :--- | :--- | :--- |
434
- | **Volatile Tokenization** | βœ… Yes | βœ… Yes | βœ… Yes |
435
- | **Standard PII Masking** | βœ… Yes | βœ… Yes | βœ… Yes |
436
- | **Max Character Length** | 15,000 chars | ♾️ Unlimited | ♾️ Unlimited |
437
- | **Industry Profiles** | General Only | 30 Profiles | 30 Profiles |
438
- | **Custom Regex Rules** | ❌ Locked | ♾️ Unlimited | ♾️ Unlimited |
439
- | **Team Rules Sync (GPO)** | ❌ No | ❌ No | βœ… Yes (Shared Link) |
440
- | **Licensing Cost** | $0 | **$110 Lifetime** | **$99/mo Flat Rate** |
451
+ | Feature | Community Free | PRO Tier | TEAMS Tier | Developer SDK |
452
+ | :--- | :--- | :--- | :--- | :--- |
453
+ | **Execution Architecture** | Local Stdio RAM | Local Stdio RAM | Local Stdio RAM | In-Process Node/WASM |
454
+ | **Volatile Tokenization** | Yes (RAM-only) | Yes (RAM-only) | Yes (RAM-only) | Yes (RAM-only) |
455
+ | **Standard PII Masking** | Yes | Yes | Yes | Yes |
456
+ | **Max Character Throughput** | 15,000 chars / call | Unlimited | Unlimited | Unlimited |
457
+ | **30 Industry Profiles** | General Only (5k trial) | All 30 Profiles | All 30 Profiles | All 30 Profiles |
458
+ | **Custom Regex Rules** | Locked | Unlimited | Unlimited | Unlimited |
459
+ | **Team Rules Sync (GPO)** | No | No | Yes (Shared Link) | Yes (Configurable) |
460
+ | **Microservice / RAG Export** | No | No | No | Yes (`@privacyscrubber/sdk`) |
461
+ | **Subprocessor Liability** | 0 (Client-side) | 0 (Client-side) | 0 (Client-side) | 0 (In-Process Node/WASM) |
462
+ | **Licensing Cost** | $0 | **$15/mo or $110 Lifetime** | **$99/mo Flat Rate** | **$299/mo or $2,990/yr** |
463
+ | **Direct Activation** | Default included | [Acquire PRO](https://privacyscrubber.com/pricing?tier=pro&utm_source=mcp_readme) | [Deploy TEAMS](https://privacyscrubber.com/pricing?tier=teams&utm_source=mcp_readme) | [Subscribe SDK](https://privacyscrubber.com/pricing?tier=sdk&utm_source=mcp_readme) |
441
464
 
442
- πŸ‘‰ **[Acquire a PRO / TEAMS License Key at privacyscrubber.com/pricing](https://privacyscrubber.com/pricing?utm_source=npm&utm_medium=readme&utm_campaign=mcp_server)**
465
+ πŸ‘‰ **[Acquire a Commercial License Key at privacyscrubber.com/pricing](https://privacyscrubber.com/pricing?utm_source=npm&utm_medium=readme&utm_campaign=mcp_server)**
443
466
 
444
467
  ---
445
468
 
@@ -552,15 +575,15 @@ MIT Β© [Ilya Sibiryakov](https://privacyscrubber.com) (BrandMeWeb)
552
575
 
553
576
  ---
554
577
 
555
- ## βš–οΈ Intellectual Property & Virtual Patent Marking
578
+ ## βš–οΈ Intellectual Property & Patent Disclosures
556
579
 
557
580
  The Zero-Trust Data Sanitization (ZTDS) architecture, in-memory deterministic tokenization, cryptographic session handoff, and stdio execution methods implemented in this package are proprietary technology of Ilya Sibiryakov (BrandMeWeb) and are protected under **Patent Pending** status:
558
581
 
559
- - **Patent Office:** State of Israel Ministry of Justice, Patent Office (ILPO)
560
- - **Application Number:** `331905` (Tracking ID: `94221`)
561
- - **Filing / Priority Date:** September 14, 2026 (Paris Convention Art. 4 & 35 U.S.C. Β§ 119 Priority)
582
+ - **Legal Status:** U.S. & International Patents Pending
583
+ - **Priority Framework:** Paris Convention Art. 4 & 35 U.S.C. Β§ 119 Priority (locked through September 14, 2027)
584
+ - **Filing / Priority Date:** September 14, 2026
562
585
  - **Official Title:** *SYSTEM AND METHOD FOR CLIENT-SIDE ZERO-TRUST DATA SANITIZATION AND CRYPTOGRAPHIC SESSION HANDOFF IN ARTIFICIAL INTELLIGENCE WORKFLOWS*
563
- - **Virtual Patent Marking:** [privacyscrubber.com/patents/](https://privacyscrubber.com/patents/) in accordance with 35 U.S.C. Β§ 287(a).
586
+ - **Patent Disclosures Hub:** [privacyscrubber.com/patents/](https://privacyscrubber.com/patents/) (formal verification via counsel NDA).
564
587
 
565
588
  ### 🌐 Internet Engineering Task Force (IETF) Specification
566
589
  - **Specification Title:** *The Zero-Trust Data Sanitization (ZTDS) Protocol for Frontier Artificial Intelligence Ingestion*
package/index.js CHANGED
@@ -114,9 +114,11 @@ function reverseTokens(text, map) {
114
114
  const colors = {
115
115
  yellowBold: '\x1b[1;33m',
116
116
  yellow: '\x1b[33m',
117
+ cyanBold: '\x1b[1;36m',
117
118
  cyan: '\x1b[36m',
118
119
  greenBold: '\x1b[1;32m',
119
120
  redBold: '\x1b[1;31m',
121
+ dim: '\x1b[2m',
120
122
  reset: '\x1b[0m'
121
123
  };
122
124
 
@@ -332,7 +334,7 @@ function buildCisoAuditTelemetry(currentTokenMap = {}) {
332
334
  function formatAuditReceipt(telemetry, compact = false, wasTruncated = false, charLimit = 15000) {
333
335
  const isCompact = compact === true || process.env.PRIVACYSCRUBBER_COMPACT_RECEIPT === '1' || process.env.PRIVACYSCRUBBER_COMPACT_RECEIPT === 'true';
334
336
  const truncationLine = wasTruncated
335
- ? `> * ⚠️ **Free Tier Limit:** Input truncated to ${charLimit.toLocaleString()} chars. Upgrade to PRO ($15/mo or $110 Lifetime) or Developer SDK ($299/mo): [privacyscrubber.com/pricing](https://privacyscrubber.com/pricing)\n`
337
+ ? `> * **Notice:** Input truncated to ${charLimit.toLocaleString()} chars (Free Tier Limit). Upgrade to PRO ($15/mo or $110 Lifetime), TEAMS ($99/mo) or Developer SDK ($299/mo): [privacyscrubber.com/pricing](https://privacyscrubber.com/pricing)\n`
336
338
  : '';
337
339
 
338
340
  if (isCompact) {
@@ -534,6 +536,10 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
534
536
  type: "array",
535
537
  items: { type: "string" },
536
538
  description: "Optional list of plaintext values to skip during detection (false positives from previous scrubs). These values will also be persisted in the session ignore list for all future calls."
539
+ },
540
+ session_id: {
541
+ type: "string",
542
+ description: "Optional session ID for multi-agent isolation (e.g. Cursor task vs Claude Desktop). Defaults to 'default'."
537
543
  }
538
544
  },
539
545
  required: ["text"]
@@ -556,6 +562,15 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
556
562
  compact: {
557
563
  type: "boolean",
558
564
  description: "Optional. Compact 1-line audit summary."
565
+ },
566
+ ignore_list: {
567
+ type: "array",
568
+ items: { type: "string" },
569
+ description: "Optional list of plaintext values to skip during detection."
570
+ },
571
+ session_id: {
572
+ type: "string",
573
+ description: "Optional session ID for multi-agent isolation. Defaults to 'default'."
559
574
  }
560
575
  },
561
576
  required: ["text"]
@@ -570,6 +585,10 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
570
585
  text: {
571
586
  type: "string",
572
587
  description: "The AI generated response containing placeholders to restore."
588
+ },
589
+ session_id: {
590
+ type: "string",
591
+ description: "Optional session ID matching the sanitize_text call for multi-agent isolation. Defaults to 'default'."
573
592
  }
574
593
  },
575
594
  required: ["text"]
@@ -592,6 +611,10 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
592
611
  compact: {
593
612
  type: "boolean",
594
613
  description: "Optional. Compact 1-line audit summary."
614
+ },
615
+ session_id: {
616
+ type: "string",
617
+ description: "Optional session ID for multi-agent isolation. Defaults to 'default'."
595
618
  }
596
619
  },
597
620
  required: ["file_path"]
@@ -614,6 +637,10 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
614
637
  compact: {
615
638
  type: "boolean",
616
639
  description: "Optional. Compact 1-line audit summary."
640
+ },
641
+ session_id: {
642
+ type: "string",
643
+ description: "Optional session ID for multi-agent isolation. Defaults to 'default'."
617
644
  }
618
645
  },
619
646
  required: ["file_path"]
@@ -796,6 +823,10 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
796
823
  profile: {
797
824
  type: "string",
798
825
  description: "Detection profile. Defaults to 'Dev'."
826
+ },
827
+ session_id: {
828
+ type: "string",
829
+ description: "Optional session ID for multi-agent isolation. Defaults to 'default'."
799
830
  }
800
831
  },
801
832
  required: []
@@ -1256,7 +1287,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1256
1287
 
1257
1288
  const charLimit = (isAdvanced && !isAutoElevated && !license.isPro) ? 5000 : 15000;
1258
1289
  if (isAdvanced && !license.isPro) {
1259
- mcpLog(`${colors.yellowBold}⚠️ [PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char limit).${colors.reset}\n`);
1290
+ mcpLog(`${colors.yellowBold}[PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char trial quota).${colors.reset}\n${colors.cyan}[Upgrade] Commercial TEAMS ($99/mo flat) & Developer SDK ($299/mo): https://privacyscrubber.com/pricing${colors.reset}\n`);
1260
1291
  }
1261
1292
 
1262
1293
  const { processedText, wasTruncated } = truncateIfFree(text, license.isPro, charLimit);
@@ -1362,7 +1393,9 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1362
1393
  ]
1363
1394
  };
1364
1395
  }
1365
- const { profile = "General", compact = false } = args;
1396
+ const { profile = "General", compact = false, session_id = "default" } = args || {};
1397
+ const targetSession = getSessionMap(session_id);
1398
+ const targetIgnoreList = getSessionIgnoreList(session_id);
1366
1399
  const filePath = rawPath;
1367
1400
 
1368
1401
  const resolvedPath = path.resolve(filePath);
@@ -1425,12 +1458,12 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1425
1458
 
1426
1459
  const charLimit = (isAdvanced && !license.isPro) ? 5000 : 15000;
1427
1460
  if (isAdvanced && !license.isPro) {
1428
- mcpLog(`${colors.yellowBold}⚠️ [PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char limit).${colors.reset}\n`);
1461
+ mcpLog(`${colors.yellowBold}[PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char trial quota).${colors.reset}\n${colors.cyan}[Upgrade] Commercial TEAMS ($99/mo flat) & Developer SDK ($299/mo): https://privacyscrubber.com/pricing${colors.reset}\n`);
1429
1462
  }
1430
1463
 
1431
1464
  const { processedText: processedContent, wasTruncated } = truncateIfFree(content, license.isPro, charLimit);
1432
1465
 
1433
- const sanitized = performSanitization(processedContent, finalProfile, sessionIgnoreList);
1466
+ const sanitized = performSanitization(processedContent, finalProfile, targetIgnoreList, targetSession);
1434
1467
  const { scrubbedText, newTokens } = sanitized;
1435
1468
  const telemetry = buildCisoAuditTelemetry(newTokens);
1436
1469
  const receiptMarkdown = formatAuditReceipt(telemetry, compact, wasTruncated, charLimit);
@@ -1476,7 +1509,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1476
1509
  const targetProfile = profile.trim();
1477
1510
  let finalProfile = targetProfile;
1478
1511
 
1479
- const sanitized = performSanitization(content, finalProfile, sessionIgnoreList);
1512
+ const sanitized = performSanitization(content, finalProfile, targetIgnoreList, targetSession);
1480
1513
  const { scrubbedText, newTokens } = sanitized;
1481
1514
  const telemetry = buildCisoAuditTelemetry(newTokens);
1482
1515
  const receiptMarkdown = formatAuditReceipt(telemetry, compact);
@@ -1509,7 +1542,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1509
1542
  const targetProfile = profile.trim();
1510
1543
  let finalProfile = targetProfile;
1511
1544
 
1512
- const sanitized = performSanitization(content, finalProfile, sessionIgnoreList);
1545
+ const sanitized = performSanitization(content, finalProfile, targetIgnoreList, targetSession);
1513
1546
  const { scrubbedText, newTokens } = sanitized;
1514
1547
  const telemetry = buildCisoAuditTelemetry(newTokens);
1515
1548
  const receiptMarkdown = formatAuditReceipt(telemetry, compact);
@@ -1578,12 +1611,12 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
1578
1611
 
1579
1612
  const charLimit = (isAdvanced && !isAutoElevated && !license.isPro) ? 5000 : 15000;
1580
1613
  if (isAdvanced && !license.isPro) {
1581
- mcpLog(`${colors.yellowBold}⚠️ [PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char limit).${colors.reset}\n`);
1614
+ mcpLog(`${colors.yellowBold}[PrivacyScrubber] Profile '${targetProfile}' active on Free Tier (5,000 char trial quota).${colors.reset}\n${colors.cyan}[Upgrade] Commercial TEAMS ($99/mo flat) & Developer SDK ($299/mo): https://privacyscrubber.com/pricing${colors.reset}\n`);
1582
1615
  }
1583
1616
 
1584
1617
  const { processedText: processedContent2, wasTruncated } = truncateIfFree(content, license.isPro, charLimit);
1585
1618
 
1586
- const { scrubbedText, newTokens } = performSanitization(processedContent2, finalProfile, sessionIgnoreList);
1619
+ const { scrubbedText, newTokens } = performSanitization(processedContent2, finalProfile, targetIgnoreList, targetSession);
1587
1620
  const telemetry = buildCisoAuditTelemetry(newTokens);
1588
1621
  const receiptMd = formatAuditReceipt(telemetry, compact, wasTruncated, charLimit);
1589
1622
 
@@ -2136,7 +2169,9 @@ ${telemetry.frameworksList.map(f => `- **${f}**`).join('\n')}
2136
2169
  }
2137
2170
 
2138
2171
  if (name === "guard_git_diff") {
2139
- const { staged = false, cwd, profile = "Dev" } = args || {};
2172
+ const { staged = false, cwd, profile = "Dev", session_id = "default" } = args || {};
2173
+ const targetSession = getSessionMap(session_id);
2174
+ const targetIgnoreList = getSessionIgnoreList(session_id);
2140
2175
  const repoCwd = cwd ? path.resolve(cwd) : process.cwd();
2141
2176
  const license = checkLicenseStatus();
2142
2177
  const limitStatus = checkFreeTierLimit(license.isPro);
@@ -2173,7 +2208,7 @@ ${telemetry.frameworksList.map(f => `- **${f}**`).join('\n')}
2173
2208
  const charLimit = (isAdvanced && !license.isPro) ? 5000 : 15000;
2174
2209
 
2175
2210
  const { processedText, wasTruncated } = truncateIfFree(diffOutput, license.isPro, charLimit);
2176
- const { scrubbedText, newTokens } = performSanitization(processedText, targetProfile, sessionIgnoreList);
2211
+ const { scrubbedText, newTokens } = performSanitization(processedText, targetProfile, targetIgnoreList, targetSession);
2177
2212
 
2178
2213
  const telemetry = buildCisoAuditTelemetry(newTokens);
2179
2214
  const receiptMd = formatAuditReceipt(telemetry, false, wasTruncated, charLimit);
@@ -2452,19 +2487,20 @@ Before reading sensitive files, running terminal commands that may print credent
2452
2487
  }
2453
2488
 
2454
2489
  const targetSession = getSessionMap(session_id);
2490
+ const targetIgnoreList = getSessionIgnoreList(session_id);
2455
2491
  let totalTokensRedacted = 0;
2456
2492
  const sanitizedChunks = [];
2457
2493
 
2458
2494
  for (let i = 0; i < chunks.length; i++) {
2459
2495
  const item = chunks[i];
2460
2496
  if (typeof item === 'string') {
2461
- const res = performSanitization(item, profile, null, targetSession);
2497
+ const res = performSanitization(item, profile, targetIgnoreList, targetSession);
2462
2498
  totalTokensRedacted += Object.keys(res.newTokens || {}).length;
2463
2499
  sanitizedChunks.push(res.scrubbedText);
2464
2500
  } else if (item && typeof item === 'object') {
2465
2501
  const copy = { ...item };
2466
2502
  const rawText = copy.text || copy.pageContent || copy.document || '';
2467
- const res = performSanitization(rawText, profile, null, targetSession);
2503
+ const res = performSanitization(rawText, profile, targetIgnoreList, targetSession);
2468
2504
  totalTokensRedacted += Object.keys(res.newTokens || {}).length;
2469
2505
 
2470
2506
  if (copy.text !== undefined) copy.text = res.scrubbedText;
@@ -2801,7 +2837,7 @@ function performSanitization(text, profile, ignoreList = null, customSessionMap
2801
2837
 
2802
2838
  function truncateIfFree(text, isPro, charLimit = 15000) {
2803
2839
  if (!isPro && text.length > charLimit) {
2804
- mcpLog(`${colors.yellowBold}⚠️ [PrivacyScrubber] Input truncated to ${charLimit.toLocaleString()} characters (Free Tier Limit).${colors.reset}\n${colors.cyan}πŸ‘‰ Set PRIVACYSCRUBBER_KEY to your PRO license key for unlimited size: https://privacyscrubber.com/pricing${colors.reset}\n`);
2840
+ mcpLog(`${colors.yellowBold}[PrivacyScrubber] Input truncated to ${charLimit.toLocaleString()} characters (Free Tier Limit).${colors.reset}\n${colors.cyan}[Upgrade] Set PRIVACYSCRUBBER_KEY to your PRO/TEAMS/SDK license key for unlimited throughput: https://privacyscrubber.com/pricing${colors.reset}\n`);
2805
2841
  const upsellNotice = `\n\n[PrivacyScrubber Free Tier: Payload truncated to ${charLimit.toLocaleString()} chars. Upgrade to PRO ($15/mo or $110 Lifetime) or Developer SDK ($299/mo) for unlimited payload processing: https://privacyscrubber.com/pricing]`;
2806
2842
  return { processedText: text.substring(0, charLimit), wasTruncated: true, upsellNotice, charLimit };
2807
2843
  }
@@ -2811,10 +2847,20 @@ function truncateIfFree(text, isPro, charLimit = 15000) {
2811
2847
  // Start the server transport
2812
2848
  const transport = new StdioServerTransport();
2813
2849
  server.connect(transport).then(() => {
2814
- mcpLog(`${colors.greenBold}βœ… PrivacyScrubber ZTDS MCP Server v${MCP_VERSION} started successfully.${colors.reset}\n`);
2815
- mcpLog(`${colors.cyan}πŸ“¦ Need programmatic in-code redaction? Try: npm install @privacyscrubber/sdk${colors.reset}\n`);
2816
- mcpLog(`${colors.yellowBold}⭐ Star us on GitHub: https://github.com/moxno/privacyscrubber-mcp${colors.reset}\n`);
2817
- mcpLog(`${colors.cyan}πŸ‘‰ Developer SDK & Enterprise: https://privacyscrubber.com/sdk/${colors.reset}\n`);
2850
+ const license = checkLicenseStatus();
2851
+ const tierName = (license.type || license.tier || 'PRO').toString().toUpperCase();
2852
+ const licenseNotice = license.isPro
2853
+ ? `${colors.greenBold}[License] ${tierName} Active (Unlimited Nodes & Profiles)${colors.reset}`
2854
+ : `${colors.yellowBold}[Tier] Community Free (15,000 chars universal / 5,000 chars vertical quota)${colors.reset}`;
2855
+
2856
+ mcpLog(`\n${colors.cyanBold}======================================================================${colors.reset}\n`);
2857
+ mcpLog(`${colors.greenBold}[PrivacyScrubber MCP v${MCP_VERSION}] Zero-Trust Data Sanitization Active${colors.reset}\n`);
2858
+ mcpLog(`${colors.cyan}[Architecture] 100% Local In-Memory RAM | 0 Bytes Network Egress${colors.reset}\n`);
2859
+ mcpLog(`${licenseNotice}\n`);
2860
+ mcpLog(`${colors.dim}[Developer SDK] In-code headless redaction: npm install @privacyscrubber/sdk${colors.reset}\n`);
2861
+ mcpLog(`${colors.dim}[TEAMS & Enterprise] Multi-seat governance & Air-gap: https://privacyscrubber.com/pricing${colors.reset}\n`);
2862
+ mcpLog(`${colors.yellow}[GitHub] Public Server Repository: https://github.com/moxno/privacyscrubber-mcp${colors.reset}\n`);
2863
+ mcpLog(`${colors.cyanBold}======================================================================${colors.reset}\n\n`);
2818
2864
  }).catch((error) => {
2819
2865
  console.error("Failed to connect MCP server transport:", error);
2820
2866
  process.exit(1);
package/manifest.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "manifest_version": "0.3",
3
3
  "name": "privacyscrubber/pii-masking-mcp",
4
- "version": "2.3.1",
4
+ "version": "2.3.3",
5
5
  "description": "CISO-Approved Zero-Trust PII & Secrets Redaction MCP Server for Cursor, Windsurf, and Claude Desktop. Prevent API leaks and comply with HIPAA/SOC 2 locally.",
6
6
  "author": {
7
7
  "name": "PrivacyScrubber",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privacyscrubber/mcp-server",
3
- "version": "2.3.1",
3
+ "version": "2.3.3",
4
4
  "mcpName": "io.github.moxno/privacyscrubber-mcp",
5
5
  "description": "CISO-Approved Zero-Trust PII & Secrets Redaction MCP Server for Cursor, Windsurf, and Claude Desktop. Prevent API leaks and comply with HIPAA/SOC 2 locally.",
6
6
  "main": "index.js",
@@ -35,9 +35,9 @@
35
35
  },
36
36
  "scripts": {
37
37
  "start": "node index.js",
38
- "build": "node ../scripts/build-mcp.js",
38
+ "build": "node -e \"const fs=require('fs'); if(fs.existsSync('../scripts/build-mcp.js')) require('child_process').execSync('node ../scripts/build-mcp.js', {stdio:'inherit'}); else console.log('MCP assets are pre-built.');\"",
39
39
  "test": "node test-mcp.js && node test-mcp-deep.js",
40
- "prepublishOnly": "npm run build && npm test"
40
+ "prepublishOnly": "npm test"
41
41
  },
42
42
  "dependencies": {
43
43
  "@modelcontextprotocol/sdk": "^1.29.0",
@@ -8,4 +8,4 @@
8
8
  * via any medium, is strictly prohibited. Protected by international copyright
9
9
  * laws and treaties.
10
10
  */
11
- const _0xa13bc9=_0x233e,_0x35ec26=_0x233e;function _0x3c6f(){const _0x451b04=['Cg93','mJC2nW','mdy5na','ntaXoq','x3rPBq','q2XVyW','mJCXmq','odq5nW','BgXIyq','mZq5na','wuPntq','B24GzG','D2flBW','t1qT','mtqYmq','B21HBa','mZy5ma','u2zguq','C3rVCG','ote2oq','BgvUzW','C2v0sq','mty0oa','mJe4oa','nZu5nq','vuHQzG','otmZndbSt0XbEgG','oteYnq','odG1nW','nJi0mG','uKrnAW','CgvYqW','seX3uW','BM9Tyq','uu5xuG','ndaWnW','otm5nq','y3j5Ca','ywnL','q29Kzq','ExHvrW','ndu2mG','mdy0nW','zxHWAq','mJa2nG','ntu4nW','uerhAq','mdq4nq','oda1nW','zNjVBq','z2v0sq','odK3oq','DMXdvG','nZq2mq','DgfYDa','uLnb','C2XPyW','sLDuia','nJC4mq','zgf0Aq','odCYoq','zxrLyW','mJyZnq','Dw5Kzq','yKjRtG','mJa2nq','luXjqW','mtKXmdy1D1D1rhrn','mtu0oq','zxHWBW','mJC2oq','tM8GAW','nZa4nW','mJuYnW','nJqYma','nta4nG','C2vLBG','mZC2ma','otKWma','mJzFiq','AYbYBW','ru5urq','Cw1krW','mZG4nG','mta5nW','mtKWnq','txjKEq','ufmTua','nde4ntaZsLjqt1zx','CNrZ','nezbwM50qq','A2jXva','C3vICW','B3buDG','otm3oq','uLbssq','vgLTzq','nKPSu3v5sa','CMvWBa','z3DosW','mte3mq','nteXoq','ody2mG','ndC5nG','nZCXnW','A2v5ia','nZyWnq','mJG1mG','ndy4ma','nZyWmW','weruEa','ufjp','odeWnq','ode0mG','nJKXmG','DeDRAq','yxnL','mdG1nW','mdmXmq','mJu4mq','zM9YBq','nZyXna','zgvJCG','ntmXoq','ndC3mG','t2LWDW','zxLk','nZm1oa','BgLKia','odC2veDrvuHc','mtyWmG','Exb0Aq','ote4mG','Aw5JBa','DcbKzq','CgLYzq','y2HHCG','mtmZnG','nJy4mq','zgvK','nJG4na','sLDu','DhjPBG','nta0na','nJa4mW','mJqYoa','suXpva','odmXnW','mta0ma','nde1mW','nti0mG','q2HHCG','DgvT','mdG2nq','ELnhva','nJKZmG','odu1oq','tgDQDa','mdu5mq','mJmZna','Dg9vCa','odyYoa','nJG5oq','mZGXmW','DMfSAq','DgvK','nZG2oq','otyWoq','DcbLEa','mte0oq','AfPeyG','rffKAG','r2LxEG','CMLUzW','yxn0xW','zxHW','mtyYnG','zMLUzq','ufmTuG','u0eT','mZu0ma','nJq5oq','nZaYmG','CMvK','odKYnq','vf8Yma','mdC1na','B25fEa','wxrzua','nJa1nG','ndyWoa','BM93','otG2oa','mtK3na','ndG4mG','nte1oa','nJm0nW','x1nbta','DhjPBq','nZy5mJn0sePbD2G','yMLUyq','lvbjta','nJi2ma','ueLWwG','mJeYnW','oti5na','mJm4oq','nZmWoa','Bw9JAW','mZuYmq','sw52yq','y2SGyq','ntaZnG','DhnxAq','ndy3oa','C3bSAq','nZa2mq','mtCYoq','ota4ma','nJu1na','ntGXoa','odiXmG','uM5Osa','uLnbia','BNnLtq','mdmYma','wKLnvq','zw5VqW','mtiWmq','mdGYoq','BuzKwa','odyXmG','mta2mJq4mxPuwK1AAW','odqYoq','tgLJzq','nZmXmG','CfPQta','uuj6EG','mJK2ma','mtqXmq','mZyWoa','qMXmAG','s0nXzW','t0vn','ntK2na','mZiXoq','uxbMtG','yw5HzW','mZa5nG','mtKXnZq3n1bqEMPWvq','ChnFBa','nty3ma','wgf2BW','v2L0Aa','ndeYoq','nJmWmW','mJy4ma','nta1oa','ndi1mW','C3rHCG','mZGWmW','mtaXnZu4zeDbtgDf','DgLLCG','B25bBG','ody1mG','CgfYCW','ywLSzq','CgfKuW','zw5KCW','nZqYna','ugLSBW','ntC0nG','Dg9tDa','nJiXmq','otaZnW','igzHAq','nde0oq','sfbuqG','ntG4na','odiZnW','mZiYma','ntaXnW','ndKXnq','vevbtq','nZq3ma','nZCWnG','ntaZna','wLreuW','nZK3oq','u0rl','q0L3zq','mK1gBNnktG','otaYmG','ntC0oq','DxnnuG','zxKGCa','ntu0nW','mJCZna','ndq3nW','DhzAAq','y29UyW','ywDL','ndyZnW','nty5mG','mJeZmq','ofjWDM90rG','vxPbAW','DwrLCW','BhKGza','CM92Aq','DgLVBG','BgvK','mZq4nG','yMfZzq'];_0x3c6f=function(){return _0x451b04;};return _0x3c6f();}function _0x233e(_0x5d78fb,_0x2152b9){_0x5d78fb=_0x5d78fb-0x83;const _0x3c6f3a=_0x3c6f();let _0x233eda=_0x3c6f3a[_0x5d78fb];if(_0x233e['bkBZCI']===undefined){var _0xd52d76=function(_0x22429d){const _0x3815f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1dd350='',_0x232aa4='';for(let _0x5b6f52=0x0,_0x1743c0,_0x4a047c,_0x2dd9d7=0x0;_0x4a047c=_0x22429d['charAt'](_0x2dd9d7++);~_0x4a047c&&(_0x1743c0=_0x5b6f52%0x4?_0x1743c0*0x40+_0x4a047c:_0x4a047c,_0x5b6f52++%0x4)?_0x1dd350+=String['fromCharCode'](0xff&_0x1743c0>>(-0x2*_0x5b6f52&0x6)):0x0){_0x4a047c=_0x3815f4['indexOf'](_0x4a047c);}for(let _0x1f67d2=0x0,_0x495951=_0x1dd350['length'];_0x1f67d2<_0x495951;_0x1f67d2++){_0x232aa4+='%'+('00'+_0x1dd350['charCodeAt'](_0x1f67d2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x232aa4);};_0x233e['RIKYaC']=_0xd52d76,_0x233e['wdcGmr']={},_0x233e['bkBZCI']=!![];}const _0x5ea612=_0x3c6f3a[0x0],_0x525e87=_0x5d78fb+_0x5ea612,_0x290bce=_0x233e['wdcGmr'][_0x525e87];return!_0x290bce?(_0x233eda=_0x233e['RIKYaC'](_0x233eda),_0x233e['wdcGmr'][_0x525e87]=_0x233eda):_0x233eda=_0x290bce,_0x233eda;}(function(_0x204223,_0xad4e2d){const _0x5d0def={_0x315533:0xef,_0x51920b:0x17e,_0x56fb25:0x167,_0xe5f32:0x185,_0x21648b:0x11b,_0x514f30:0xe3,_0x269c1c:0x13e,_0xddd74f:0xb1},_0x484321=_0x233e,_0x584b9a=_0x233e,_0x315528=_0x204223();while(!![]){try{const _0x2558ca=parseInt(_0x484321(_0x5d0def._0x315533))/0x1*(parseInt(_0x584b9a(0x10d))/0x2)+parseInt(_0x584b9a(0x17c))/0x3+parseInt(_0x584b9a(_0x5d0def._0x51920b))/0x4*(parseInt(_0x484321(_0x5d0def._0x56fb25))/0x5)+-parseInt(_0x584b9a(_0x5d0def._0xe5f32))/0x6*(-parseInt(_0x484321(0xd2))/0x7)+parseInt(_0x484321(_0x5d0def._0x21648b))/0x8*(parseInt(_0x484321(_0x5d0def._0x514f30))/0x9)+-parseInt(_0x484321(_0x5d0def._0x269c1c))/0xa+-parseInt(_0x484321(_0x5d0def._0xddd74f))/0xb*(parseInt(_0x484321(0x1a5))/0xc);if(_0x2558ca===_0xad4e2d)break;else _0x315528['push'](_0x315528['shift']());}catch(_0x4bc6d4){_0x315528['push'](_0x315528['shift']());}}}(_0x3c6f,0x1e645),function(_0x186ecd){const _0x4ec852={_0xa1d4d5:0xe4,_0x7804b5:0x128,_0x105528:0x109,_0xe1dc4c:0xc9,_0x19e9c6:0x18d,_0x485a46:0x14f,_0x3ce850:0xa1,_0x4e176a:0x19e,_0x93eb39:0x1a7,_0x5cb3f6:0x12f,_0x3cd9ad:0xf4,_0x36a844:0x10b,_0x2de37c:0x193,_0x216f6a:0x15d,_0x14ac8d:0x8e,_0x221c94:0x15f,_0x73b10c:0x163,_0x1ae232:0x9b,_0x3f6254:0x11a,_0x55cff8:0x10a,_0x335515:0x1b8,_0x56d886:0x108,_0x34514b:0xc0,_0x1f6aa6:0x89,_0x75c35c:0xee,_0x252069:0x1b0,_0x437554:0xea,_0x2a8c51:0x127,_0x5c8075:0x1b9,_0x1f52ce:0x13c,_0x28362e:0xda,_0x1ad596:0x91,_0x2de057:0xc4,_0x2940a0:0x1b5,_0x279e0c:0xc3,_0xa591e0:0x18e,_0x5ac4cb:0x13b,_0x9fb5d4:0xc5,_0x5b5127:0xce,_0x5dfb23:0xfc,_0x5075cb:0x118,_0x11887e:0xb6,_0x45e316:0x19d,_0x373052:0x179,_0xf8adb:0x19f,_0x93385c:0xb8,_0x2cf6ac:0x9f,_0x21525c:0x182,_0x560128:0x13f,_0xf252f3:0xa8,_0x44891e:0x178,_0x2a2a70:0x12a,_0x2ae69d:0x113,_0x45b850:0x114,_0x14099f:0x153,_0x19ecdd:0x90,_0x2d8de0:0x190,_0x2b171b:0x112,_0x33ea64:0x19a,_0x3ab1d2:0xec,_0xcafad6:0x83,_0x528e43:0x1b3,_0x24c05c:0xe2,_0x3ef835:0x8b,_0x1ea020:0x191,_0x42b694:0x93,_0xb43f64:0x168,_0x5c873c:0x16f,_0x2f4a69:0x1a3,_0x3b532:0xd1,_0x13f4be:0x19b,_0x3eff57:0xcf,_0x31a27e:0x15e,_0x349a65:0xa2,_0x4ead6d:0x1b7,_0x4bae72:0x132,_0x2a1534:0x157,_0x485757:0x14e,_0x54773b:0x101,_0x351da2:0x160,_0x288e54:0x102,_0x2b4f56:0x10e,_0x3a347f:0x12b,_0x1f4c67:0x141,_0x212d85:0xc2,_0x3460dd:0x85,_0x35e3a3:0x14d,_0x2e8118:0xf2,_0x217854:0x16e,_0x30a851:0x122,_0x2d981f:0x86,_0x3325ec:0x18a,_0x2e7945:0xae,_0x2430ff:0x1ad,_0x480362:0x195,_0x4064a9:0x1a0,_0x359cdd:0xe5,_0x315b78:0xf9,_0x1e8da2:0x16a,_0xfdf4a:0xb4,_0x251e4e:0xd5,_0x4a4496:0x10f,_0x4050be:0xde,_0x17f8fa:0x165,_0x2b5ef3:0xb7,_0x3639:0xfe,_0x55bd68:0xd8,_0x49ed6c:0x1ae,_0x3b39e6:0xeb,_0x3c3a0f:0x171,_0x9dd71c:0xc7,_0x14e448:0xb9,_0x56eced:0x106,_0x29a974:0x104,_0x5f4202:0xbb,_0x321ff9:0xab,_0x24b263:0xa0,_0x55b7fa:0x1a8,_0x26b93c:0xbe,_0xe04edf:0x189,_0x3e36f8:0x150,_0x184135:0x125,_0x2f5b95:0x88,_0x3b18a5:0x8d,_0x3034f0:0x159,_0x291a25:0xd3,_0x2e3b5a:0x100,_0x6ae516:0x16c,_0x150d5d:0x196,_0x2f966d:0x134,_0x231cd5:0x172,_0x1d5aee:0x12d,_0x3c0d14:0x1a6,_0x390749:0x126,_0x383699:0x13a,_0x46528b:0x162,_0x24491e:0xd9,_0x1c914c:0x151,_0x591ad3:0xe1,_0x513fa6:0xd4,_0x2e9572:0xca,_0x192b94:0x115,_0x3489ad:0x94,_0x1c6ff7:0x14c,_0x431f43:0x169,_0x4335b6:0x17d},_0x3a7282={_0x24ac85:0xb0,_0x250901:0x143,_0x3775aa:0x198,_0x2d08f2:0xb5,_0x20d611:0xba,_0xe80449:0x184,_0x445ef1:0xba,_0x24e6e7:0x184,_0x2c0ef4:0xa9,_0xf2207d:0x136,_0x264e9b:0x117,_0x3e23d9:0x1bc,_0x33250e:0x146,_0x435a39:0x17a,_0x3197b6:0x184,_0x1bbf26:0x136,_0x17ee4f:0x139,_0x54c901:0x1bc,_0x30a891:0x98,_0x5ea81a:0x128,_0x3d2f28:0xfa,_0x4948aa:0xba,_0x3be08d:0x184,_0x4d7f7e:0xba,_0x4d0cba:0xf1,_0x248322:0x133,_0x5abdcf:0xf1,_0x38995d:0x129,_0x4fed6e:0x174,_0x242d57:0x12c,_0x275ffa:0xbd,_0x1ab587:0x145,_0x26856f:0x161,_0x5dec2e:0x8f,_0x19138f:0x163,_0x37c44e:0x9b,_0xac7a8b:0xed,_0x276d85:0x1b6,_0x407305:0x180,_0x5d2d7a:0x1b2,_0x257dca:0x138,_0x400448:0x1ac,_0x4b0415:0x14b,_0x17e873:0xfa,_0x1b99d0:0x97,_0x15e7fa:0xf5,_0xd43ee5:0x15a,_0xe3f882:0xbf,_0x2e57a2:0x109,_0x5a7854:0x131,_0x273500:0x180,_0x2f9f64:0x105,_0x2cb3d2:0xa5,_0x1b5a9e:0x1ab,_0x2cad4b:0xa5,_0x266a78:0xf8,_0x4aaea7:0xf8,_0x39232d:0x1ab,_0x48c870:0x149,_0x28748b:0x120,_0x1607dd:0xed,_0x470d50:0x9d,_0x52dec5:0x138,_0x556d59:0x1ac,_0x341d0c:0x138,_0x955bd4:0xfa,_0x375a96:0x97,_0x330948:0xf5,_0x29085e:0x15a,_0x3170bc:0xdb,_0x5723bb:0xed,_0x31a986:0xc1,_0x12b791:0xa5,_0x1563cc:0xa5,_0x422dec:0x15b,_0x588e73:0x144,_0x533395:0x193,_0x3f5012:0x105,_0x1bc303:0x164,_0x22da39:0x175,_0x55812f:0x183,_0x3020a0:0x1a9,_0x5e1fd2:0x11d,_0x1a380f:0x109,_0x1dd8fa:0x173,_0x33dec3:0x138,_0x417a2c:0x110,_0x370e2b:0x1ac,_0x107519:0x14b,_0x153c09:0xfa,_0x13da56:0x97,_0x3b6932:0xf5,_0x3c1f67:0x12e,_0x38b374:0x158,_0x371193:0xc1,_0x4e7147:0x14a,_0x3d5f88:0x186,_0x34f3d7:0x14a,_0x68a180:0x138,_0x311850:0x142,_0x4683ac:0x138,_0x52eae7:0x14b,_0x29f2f3:0xf5,_0x2bd30b:0x15a,_0x4ef8f4:0x97,_0x24e5bf:0x181,_0x26a21e:0x142,_0x3461f4:0xf6,_0x33a1ec:0x186,_0x1d48f0:0x14a,_0x5710fd:0xf3,_0x32777e:0x99,_0x259235:0x197,_0x4f324d:0x1ab,_0x14f280:0x15d,_0x2eb280:0xa1,_0x197d99:0xbc,_0x4ff005:0x19c},_0x3f53e9={_0x32e07f:0x124,_0x389003:0x152,_0x3808dc:0x13d,_0x2ebb69:0x176,_0x1ac304:0x87,_0x433afa:0x14b,_0x53c952:0xc8,_0x433998:0xe0,_0x32dc84:0x15c,_0x3fd41e:0x135,_0x375e1e:0x187,_0x5e56f5:0x95,_0x4192f0:0xd6,_0x3470d3:0xd0,_0x5221de:0x135,_0x31e588:0xd7,_0x5597a2:0x11c,_0x4d6038:0xfa,_0x33ad00:0x97},_0x24271b={_0x59f7c4:0xcc,_0xe1f579:0x1ac,_0x3a140e:0x14b,_0x5137af:0xfa,_0x233db7:0x97,_0x49fc10:0xf5,_0x4cd07e:0x15a},_0x439827={_0x13f866:0xfa,_0x1d51f9:0x97,_0xb455c7:0x17f,_0xaa1986:0x138,_0xaf1c23:0x138,_0x2b7ab1:0x14b,_0x4d7568:0x180},_0x3c0dad=_0x233e,_0x15a214=_0x233e,_0xcef9d2={'CIweX':function(_0x17ac02,_0x48f2e3){return _0x17ac02>_0x48f2e3;},'Oipwt':function(_0x18eb11,_0x52ded0){return _0x18eb11%_0x52ded0;},'hZDbm':function(_0x30c3b2,_0x51c9e9){return _0x30c3b2!==_0x51c9e9;},'kbqTa':function(_0xddd79d,_0x229e4d){return _0xddd79d%_0x229e4d;},'ZIMUn':function(_0x14ca24,_0x2af5e9){return _0x14ca24<_0x2af5e9;},'PDGiH':function(_0xdd7df3,_0x389904,_0x55fc17){return _0xdd7df3(_0x389904,_0x55fc17);},'UHjfX':function(_0x2a90ee,_0x19da04){return _0x2a90ee|_0x19da04;},'qmJGQ':function(_0x5a43cf,_0x2cfeb0){return _0x5a43cf*_0x2cfeb0;},'Lgjts':function(_0x2f2947,_0x1abef2){return _0x2f2947<_0x1abef2;},'RnhHN':function(_0x3f4a68,_0x3029a2){return _0x3f4a68>>_0x3029a2;},'QpfNr':function(_0x158c39,_0x163aa3){return _0x158c39/_0x163aa3;},'KCqgR':function(_0x2d81c8,_0x4172a0){return _0x2d81c8<_0x4172a0;},'SfFQA':function(_0x5b03c6,_0x345412){return _0x5b03c6-_0x345412;},'gwNKk':function(_0x3b4345,_0x5bc6e6){return _0x3b4345+_0x5bc6e6;},'DQdjz':function(_0x28d05f,_0xeda649,_0x367b15){return _0x28d05f(_0xeda649,_0x367b15);},'pZjLZ':function(_0x3b62e6,_0x3aa231){return _0x3b62e6&_0x3aa231;},'mFdXL':function(_0x36418b,_0x304289){return _0x36418b+_0x304289;},'enoCl':function(_0x14a429,_0x1cc952){return _0x14a429+_0x1cc952;},'QBzzn':function(_0x54e442,_0x587efc){return _0x54e442^_0x587efc;},'UzAkR':function(_0x3aaa8b,_0x4e7f15){return _0x3aaa8b&_0x4e7f15;},'zSGTX':function(_0x44fa2b,_0xcb729d){return _0x44fa2b+_0xcb729d;},'PIpZY':function(_0x44e1e3,_0x3c3f4b){return _0x44e1e3!==_0x3c3f4b;},'QNWRC':_0x3c0dad(_0x4ec852._0xa1d4d5)+_0x3c0dad(0x98)+_0x15a214(0x170)+_0x15a214(_0x4ec852._0x7804b5)+'e','MrdyQ':function(_0x25b235,_0x28cab4){return _0x25b235===_0x28cab4;},'XavoE':function(_0x318f6b,_0x32c0dc){return _0x318f6b(_0x32c0dc);},'XDTxS':function(_0x316614,_0x45dde0){return _0x316614(_0x45dde0);},'BlLjJ':function(_0x25aa96,_0x2e905e){return _0x25aa96+_0x2e905e;},'GiWzX':_0x3c0dad(_0x4ec852._0x105528)+_0x15a214(0x166)+'-','HPTBz':_0x15a214(_0x4ec852._0xe1dc4c)+_0x3c0dad(_0x4ec852._0x19e9c6)+_0x3c0dad(_0x4ec852._0x485a46)+_0x3c0dad(_0x4ec852._0x3ce850),'HLwSd':_0x3c0dad(0xc9)+_0x3c0dad(_0x4ec852._0x4e176a)+_0x3c0dad(_0x4ec852._0x93eb39)+_0x3c0dad(_0x4ec852._0x5cb3f6)+_0x15a214(_0x4ec852._0x3cd9ad)+'d','bBkNf':_0x3c0dad(_0x4ec852._0x36a844),'usMRg':function(_0x29b260,_0xb7a02c){return _0x29b260*_0xb7a02c;},'YJMMj':function(_0x5190e0,_0x15528f){return _0x5190e0===_0x15528f;},'vlCVW':_0x3c0dad(0x1a2),'RDMkF':function(_0x2bb771,_0x53eec5){return _0x2bb771(_0x53eec5);},'opTvn':function(_0x32e907,_0x44f0bc){return _0x32e907+_0x44f0bc;},'YtYPH':function(_0x7c3ba0,_0x501679){return _0x7c3ba0+_0x501679;},'tGkir':_0x3c0dad(_0x4ec852._0x2de37c),'waKor':_0x3c0dad(_0x4ec852._0x216f6a)+_0x3c0dad(_0x4ec852._0x14ac8d)+_0x3c0dad(_0x4ec852._0x221c94)+_0x15a214(0x12f)+_0x3c0dad(_0x4ec852._0x3cd9ad)+'d','tvZiq':function(_0x37de72,_0x5e2fce){return _0x37de72!==_0x5e2fce;},'yxUGW':_0x3c0dad(_0x4ec852._0x73b10c)+_0x15a214(_0x4ec852._0x1ae232)+'d'},_0x51dd29=BigInt(_0x15a214(_0x4ec852._0x3f6254)+_0x15a214(_0x4ec852._0x55cff8)+_0x15a214(_0x4ec852._0x335515)+_0x15a214(_0x4ec852._0x56d886)+_0x15a214(_0x4ec852._0x34514b)+_0x15a214(_0x4ec852._0x1f6aa6)+_0x15a214(0x1ba)+_0x3c0dad(_0x4ec852._0x75c35c)+_0x3c0dad(0xaa)+_0x15a214(_0x4ec852._0x252069)+_0x15a214(_0x4ec852._0x437554)+_0x15a214(_0x4ec852._0x2a8c51)+_0x15a214(_0x4ec852._0x5c8075)+_0x3c0dad(0x154)+_0x3c0dad(_0x4ec852._0x1f52ce)+_0x15a214(_0x4ec852._0x28362e)+_0x15a214(_0x4ec852._0x1ad596)+_0x15a214(_0x4ec852._0x2de057)+_0x3c0dad(_0x4ec852._0x2940a0)+_0x15a214(_0x4ec852._0x279e0c)+_0x15a214(_0x4ec852._0xa591e0)+_0x3c0dad(0x119)+_0x15a214(_0x4ec852._0x5ac4cb)+_0x3c0dad(0x194)+_0x15a214(_0x4ec852._0x9fb5d4)+_0x15a214(_0x4ec852._0x5b5127)+_0x15a214(0xdf)+_0x3c0dad(_0x4ec852._0x5dfb23)+_0x3c0dad(_0x4ec852._0x5075cb)+_0x15a214(_0x4ec852._0x11887e)+_0x3c0dad(_0x4ec852._0x45e316)+_0x15a214(0x140)+_0x3c0dad(_0x4ec852._0x373052)+_0x3c0dad(_0x4ec852._0xf8adb)+_0x3c0dad(_0x4ec852._0x93385c)+_0x3c0dad(0x1b4)+_0x15a214(_0x4ec852._0x2cf6ac)+_0x15a214(0xa4)+_0x15a214(_0x4ec852._0x21525c)+_0x15a214(_0x4ec852._0x560128)+_0x3c0dad(_0x4ec852._0xf252f3)+_0x15a214(_0x4ec852._0x44891e)+_0x15a214(_0x4ec852._0x2a2a70)+_0x3c0dad(_0x4ec852._0x2ae69d)+_0x3c0dad(_0x4ec852._0x45b850)+_0x3c0dad(_0x4ec852._0x14099f)+_0x15a214(0xac)+_0x15a214(_0x4ec852._0x19ecdd)+_0x15a214(_0x4ec852._0x2d8de0)+_0x15a214(_0x4ec852._0x2b171b)+_0x15a214(_0x4ec852._0x33ea64)+_0x15a214(_0x4ec852._0x3ab1d2)+_0x3c0dad(_0x4ec852._0xcafad6)+_0x15a214(_0x4ec852._0x528e43)+_0x15a214(_0x4ec852._0x24c05c)+_0x15a214(_0x4ec852._0x3ef835)+_0x15a214(_0x4ec852._0x1ea020)+_0x3c0dad(_0x4ec852._0x42b694)+_0x15a214(0xe8)+_0x3c0dad(_0x4ec852._0xb43f64)+_0x3c0dad(_0x4ec852._0x5c873c)+_0x15a214(0xad)+_0x3c0dad(_0x4ec852._0x2f4a69)+_0x15a214(0x9a)+_0x3c0dad(_0x4ec852._0x3b532)+_0x3c0dad(_0x4ec852._0x13f4be)+_0x15a214(_0x4ec852._0x3eff57)+_0x3c0dad(_0x4ec852._0x31a27e)+_0x3c0dad(_0x4ec852._0x349a65)+_0x15a214(_0x4ec852._0x4ead6d)+_0x15a214(_0x4ec852._0x4bae72)+_0x3c0dad(0xa7)+_0x15a214(0x8c)+_0x15a214(_0x4ec852._0x2a1534)+_0x3c0dad(_0x4ec852._0x485757)+_0x3c0dad(_0x4ec852._0x54773b)+_0x3c0dad(_0x4ec852._0x351da2)+_0x15a214(_0x4ec852._0x288e54)+_0x15a214(0x18c)+_0x15a214(_0x4ec852._0x2b4f56)+_0x15a214(0xc6)+_0x3c0dad(_0x4ec852._0x3a347f)+_0x15a214(_0x4ec852._0x1f4c67)+_0x15a214(_0x4ec852._0x212d85)+_0x15a214(_0x4ec852._0x3460dd)+_0x15a214(0x9e)+_0x3c0dad(_0x4ec852._0x35e3a3)+_0x3c0dad(_0x4ec852._0x2e8118)+_0x3c0dad(_0x4ec852._0x217854)+_0x15a214(0xf7)+_0x3c0dad(_0x4ec852._0x30a851)+_0x3c0dad(_0x4ec852._0x2d981f)+_0x15a214(_0x4ec852._0x3325ec)+_0x3c0dad(0x188)+_0x15a214(_0x4ec852._0x2e7945)+_0x15a214(_0x4ec852._0x2430ff)+_0x3c0dad(_0x4ec852._0x480362)+_0x15a214(0x148)+_0x15a214(_0x4ec852._0x4064a9)+_0x3c0dad(_0x4ec852._0x359cdd)+_0x3c0dad(_0x4ec852._0x315b78)+_0x3c0dad(_0x4ec852._0x1e8da2)+_0x3c0dad(_0x4ec852._0xfdf4a)+_0x3c0dad(_0x4ec852._0x251e4e)+_0x15a214(_0x4ec852._0x4a4496)+_0x3c0dad(_0x4ec852._0x4050be)+_0x3c0dad(_0x4ec852._0x17f8fa)+_0x3c0dad(_0x4ec852._0x2b5ef3)+_0x15a214(0xfb)+_0x15a214(_0x4ec852._0x3639)+_0x3c0dad(_0x4ec852._0x55bd68)+_0x15a214(_0x4ec852._0x49ed6c)+_0x3c0dad(0x16d)+_0x3c0dad(_0x4ec852._0x3b39e6)+_0x15a214(_0x4ec852._0x3c3a0f)+_0x15a214(_0x4ec852._0x9dd71c)+_0x3c0dad(_0x4ec852._0x14e448)+_0x15a214(_0x4ec852._0x56eced)+_0x15a214(_0x4ec852._0x29a974)+_0x15a214(_0x4ec852._0x5f4202)+_0x15a214(_0x4ec852._0x321ff9)+_0x3c0dad(_0x4ec852._0x24b263)+_0x15a214(_0x4ec852._0x55b7fa)+_0x15a214(0x18b)+_0x3c0dad(0x177)+_0x3c0dad(0xe9)+_0x15a214(_0x4ec852._0x26b93c)+_0x3c0dad(_0x4ec852._0xe04edf)+_0x3c0dad(_0x4ec852._0x3e36f8)+_0x15a214(_0x4ec852._0x184135)+_0x3c0dad(_0x4ec852._0x2f5b95)+_0x15a214(0x147)+_0x3c0dad(0x18f)+_0x3c0dad(_0x4ec852._0x3b18a5)+_0x3c0dad(_0x4ec852._0x3034f0)+_0x15a214(_0x4ec852._0x291a25)+_0x3c0dad(0x199)+_0x3c0dad(_0x4ec852._0x351da2)+_0x15a214(_0x4ec852._0x2e3b5a)+_0x15a214(_0x4ec852._0x6ae516)+_0x3c0dad(_0x4ec852._0x150d5d)+_0x3c0dad(_0x4ec852._0x2f966d)+_0x3c0dad(_0x4ec852._0x231cd5)+_0x15a214(0x103)+_0x15a214(0xcb)+_0x3c0dad(_0x4ec852._0x1d5aee)+_0x3c0dad(_0x4ec852._0x3c0d14)+_0x15a214(_0x4ec852._0x390749)+_0x15a214(_0x4ec852._0x383699)+_0x15a214(_0x4ec852._0x46528b)+_0x3c0dad(_0x4ec852._0x24491e)+_0x15a214(0x107)+_0x15a214(_0x4ec852._0x1c914c)+_0x15a214(0x137)+'1'),_0x4026ef=0x10001n;function _0xf5483f(_0x1c747b,_0x3ffa4d,_0xe16bbe){const _0x355b6a=_0x15a214,_0x41c1a9=_0x15a214;let _0x56ea1b=0x1n;_0x1c747b=_0x1c747b%_0xe16bbe;while(_0xcef9d2[_0x355b6a(0x10c)+'X'](_0x3ffa4d,0x0n)){if(_0xcef9d2[_0x41c1a9(0x1a1)+'t'](_0x3ffa4d,0x2n)===0x1n)_0x56ea1b=_0x56ea1b*_0x1c747b%_0xe16bbe;_0x3ffa4d=_0x3ffa4d/0x2n,_0x1c747b=_0x1c747b*_0x1c747b%_0xe16bbe;}return _0x56ea1b;}function _0x339466(_0x4a632f){const _0x2ee75d=_0x15a214,_0x53578c=_0x15a214;let _0x5bb91e=_0x4a632f[_0x2ee75d(_0x439827._0x13f866)+_0x53578c(_0x439827._0x1d51f9)](0x10);if(_0xcef9d2[_0x2ee75d(0x94)+'m'](_0xcef9d2[_0x53578c(_0x439827._0xb455c7)+'a'](_0x5bb91e[_0x2ee75d(_0x439827._0xaa1986)+'th'],0x2),0x0))_0x5bb91e='0'+_0x5bb91e;let _0xf471cb='';for(let _0x3e06f6=0x0;_0x3e06f6<_0x5bb91e[_0x2ee75d(_0x439827._0xaf1c23)+'th'];_0x3e06f6+=0x2){_0xf471cb+=String[_0x2ee75d(0x155)+_0x53578c(0x1bb)+_0x53578c(_0x439827._0x2b7ab1)](parseInt(_0x5bb91e[_0x2ee75d(_0x439827._0x4d7568)+'tr'](_0x3e06f6,0x2),0x10));}return _0xf471cb;}function _0xfe4b78(_0x4edeb2){const _0x4d7daf=_0x15a214,_0x3797da=_0x15a214;let _0x3129a6='';for(let _0x1181d9=0x0;_0xcef9d2[_0x4d7daf(_0x24271b._0x59f7c4)+'n'](_0x1181d9,_0x4edeb2[_0x4d7daf(0x138)+'th']);_0x1181d9++){_0x3129a6+=_0x4edeb2[_0x4d7daf(_0x24271b._0xe1f579)+_0x3797da(_0x24271b._0x3a140e)+'At'](_0x1181d9)[_0x3797da(_0x24271b._0x5137af)+_0x3797da(_0x24271b._0x233db7)](0x10)[_0x4d7daf(_0x24271b._0x49fc10)+_0x4d7daf(_0x24271b._0x4cd07e)](0x2,'0');}return BigInt('0x'+_0x3129a6);}function _0x26e862(_0x1d4f7e){const _0x37183=_0x15a214,_0x299a1a=_0x15a214;function _0x106f33(_0x167f97,_0xef584a){return _0x167f97>>>_0xef584a|_0x167f97<<0x20-_0xef584a;}var _0x27176d=Math[_0x37183(_0x3f53e9._0x32e07f)],_0x15ed62=_0x27176d(0x2,0x20),_0x220802=_0x299a1a(0x138)+'th',_0x132920,_0x23bd2e,_0x5cfbde='',_0x521162=[],_0x34377c=_0x1d4f7e[_0x220802]*0x8,_0x288dd4=_0x26e862['h']=_0x26e862['h']||[],_0xe1aba9=_0x26e862['k']=_0x26e862['k']||[],_0x2e9ade=_0xe1aba9[_0x220802],_0x3fb989={};for(var _0x5d0cb0=0x2;_0x2e9ade<0x40;_0x5d0cb0++){if(!_0x3fb989[_0x5d0cb0]){for(_0x132920=0x0;_0x132920<0x139;_0x132920+=_0x5d0cb0){_0x3fb989[_0x132920]=_0x5d0cb0;}_0x288dd4[_0x2e9ade]=_0xcef9d2[_0x299a1a(_0x3f53e9._0x389003)+'H'](_0x27176d,_0x5d0cb0,0.5)*_0x15ed62|0x0,_0xe1aba9[_0x2e9ade++]=_0xcef9d2[_0x37183(_0x3f53e9._0x3808dc)+'X'](_0xcef9d2[_0x299a1a(_0x3f53e9._0x2ebb69)+'Q'](_0x27176d(_0x5d0cb0,0x1/0x3),_0x15ed62),0x0);}}_0x1d4f7e+='\u0080';while(_0x1d4f7e[_0x220802]%0x40-0x38)_0x1d4f7e+='\x00';for(_0x132920=0x0;_0xcef9d2[_0x299a1a(_0x3f53e9._0x1ac304)+'s'](_0x132920,_0x1d4f7e[_0x220802]);_0x132920++){_0x23bd2e=_0x1d4f7e[_0x37183(0x1ac)+_0x37183(_0x3f53e9._0x433afa)+'At'](_0x132920);if(_0x23bd2e>>0x8)return;_0x521162[_0xcef9d2[_0x299a1a(_0x3f53e9._0x53c952)+'N'](_0x132920,0x2)]|=_0x23bd2e<<_0xcef9d2[_0x37183(0x17f)+'a'](0x3-_0x132920,0x4)*0x8;}_0x521162[_0x521162[_0x220802]]=_0xcef9d2[_0x37183(_0x3f53e9._0x433998)+'r'](_0x34377c,_0x15ed62)|0x0,_0x521162[_0x521162[_0x220802]]=_0x34377c;for(_0x23bd2e=0x0;_0xcef9d2[_0x299a1a(0xdc)+'R'](_0x23bd2e,_0x521162[_0x220802]);){var _0x4e30f8=_0x521162[_0x37183(_0x3f53e9._0x32dc84)+'e'](_0x23bd2e,_0x23bd2e+=0x10),_0x289216=_0x288dd4;_0x288dd4=_0x288dd4[_0x299a1a(0x15c)+'e'](0x0,0x8);for(_0x132920=0x0;_0x132920<0x40;_0x132920++){var _0x466e9e=_0x4e30f8[_0x132920-0xf],_0x13ed27=_0x4e30f8[_0xcef9d2[_0x37183(_0x3f53e9._0x3fd41e)+'A'](_0x132920,0x2)],_0x2b7033=_0x288dd4[0x0],_0x4a3971=_0x288dd4[0x4],_0x34ff76=_0xcef9d2[_0x299a1a(_0x3f53e9._0x375e1e)+'k'](_0xcef9d2[_0x299a1a(_0x3f53e9._0x375e1e)+'k'](_0x288dd4[0x7],_0x106f33(_0x4a3971,0x6)^_0xcef9d2[_0x37183(_0x3f53e9._0x5e56f5)+'z'](_0x106f33,_0x4a3971,0xb)^_0x106f33(_0x4a3971,0x19))+(_0xcef9d2[_0x37183(_0x3f53e9._0x4192f0)+'Z'](_0x4a3971,_0x288dd4[0x5])^~_0x4a3971&_0x288dd4[0x6])+_0xe1aba9[_0x132920],_0x4e30f8[_0x132920]=_0x132920<0x10?_0x4e30f8[_0x132920]:_0xcef9d2[_0x299a1a(_0x3f53e9._0x3470d3)+'L'](_0x4e30f8[_0xcef9d2[_0x299a1a(_0x3f53e9._0x5221de)+'A'](_0x132920,0x10)]+(_0x106f33(_0x466e9e,0x7)^_0xcef9d2[_0x299a1a(0x152)+'H'](_0x106f33,_0x466e9e,0x12)^_0x466e9e>>>0x3)+_0x4e30f8[_0x132920-0x7],_0x106f33(_0x13ed27,0x11)^_0x106f33(_0x13ed27,0x13)^_0x13ed27>>>0xa)|0x0),_0x951712=_0xcef9d2[_0x37183(0xcd)+'l'](_0xcef9d2[_0x299a1a(_0x3f53e9._0x31e588)+'n'](_0x106f33(_0x2b7033,0x2)^_0x106f33(_0x2b7033,0xd),_0x106f33(_0x2b7033,0x16)),_0xcef9d2[_0x37183(_0x3f53e9._0x5597a2)+'R'](_0x2b7033,_0x288dd4[0x1])^_0x2b7033&_0x288dd4[0x2]^_0x288dd4[0x1]&_0x288dd4[0x2]);_0x288dd4=[_0x34ff76+_0x951712|0x0][_0x299a1a(0x116)+'at'](_0x288dd4),_0x288dd4[0x4]=_0xcef9d2[_0x299a1a(0x84)+'X'](_0x288dd4[0x4],_0x34ff76)|0x0;}for(_0x132920=0x0;_0x132920<0x8;_0x132920++){_0x288dd4[_0x132920]=_0xcef9d2[_0x37183(_0x3f53e9._0x3470d3)+'L'](_0x288dd4[_0x132920],_0x289216[_0x132920])|0x0;}}for(_0x132920=0x0;_0x132920<0x8;_0x132920++){for(_0x23bd2e=0x3;_0x23bd2e+0x1;_0x23bd2e--){var _0x70f882=_0x288dd4[_0x132920]>>_0x23bd2e*0x8&0xff;_0x5cfbde+=(_0x70f882<0x10?0x0:'')+_0x70f882[_0x299a1a(_0x3f53e9._0x4d6038)+_0x37183(_0x3f53e9._0x33ad00)](0x10);}}return _0x5cfbde;}class LicenseManager{static validate(_0x2450d3,_0x11082a={}){const _0x38118b=_0x3c0dad,_0x5f0e82=_0x3c0dad;if(!_0x2450d3)return{'valid':![],'tier':null,'reason':_0x38118b(0x16b)+_0x38118b(0x111)+_0x5f0e82(0x11f)+_0x38118b(0x1af)};const _0x26a3b7=_0x2450d3[_0x5f0e82(_0x3a7282._0x24ac85)](),_0x3531e8=_0x26a3b7[_0x38118b(0x8a)+_0x5f0e82(_0x3a7282._0x250901)+_0x38118b(_0x3a7282._0x3775aa)](),_0x496437=_0x3531e8[_0x5f0e82(0xc1)+'t']('-'),_0x15fb5c=_0x11082a[_0x5f0e82(0xba)+_0x38118b(0x184)]!==undefined&&_0xcef9d2[_0x5f0e82(_0x3a7282._0x2d08f2)+'Y'](_0x11082a[_0x38118b(_0x3a7282._0x20d611)+_0x38118b(_0x3a7282._0xe80449)],null)?_0x11082a[_0x5f0e82(_0x3a7282._0x445ef1)+_0x38118b(_0x3a7282._0x24e6e7)]:Date[_0x5f0e82(_0x3a7282._0x2c0ef4)]();let _0x3e4de8=0x0;_0x11082a[_0x38118b(_0x3a7282._0xf2207d)+_0x38118b(0x117)]&&(_0x3e4de8=parseInt(_0x11082a[_0x5f0e82(_0x3a7282._0xf2207d)+_0x5f0e82(_0x3a7282._0x264e9b)][_0x5f0e82(0x156)+_0x38118b(_0x3a7282._0x3e23d9)](_0xcef9d2[_0x38118b(_0x3a7282._0x33250e)+'C'])||'0',0xa),(_0xcef9d2[_0x38118b(_0x3a7282._0x435a39)+'Q'](_0x11082a[_0x38118b(_0x3a7282._0x20d611)+_0x38118b(_0x3a7282._0xe80449)],undefined)||_0x11082a[_0x5f0e82(_0x3a7282._0x445ef1)+_0x5f0e82(_0x3a7282._0x3197b6)]===null)&&_0x11082a[_0x5f0e82(_0x3a7282._0x1bbf26)+_0x5f0e82(_0x3a7282._0x264e9b)][_0x5f0e82(_0x3a7282._0x17ee4f)+_0x38118b(_0x3a7282._0x54c901)](_0x5f0e82(0xe4)+_0x5f0e82(_0x3a7282._0x30a891)+_0x5f0e82(0x170)+_0x38118b(_0x3a7282._0x5ea81a)+'e',_0x15fb5c[_0x38118b(_0x3a7282._0x3d2f28)+_0x5f0e82(0x97)]()));if((_0x11082a[_0x5f0e82(_0x3a7282._0x4948aa)+_0x38118b(_0x3a7282._0x3be08d)]===undefined||_0x11082a[_0x5f0e82(_0x3a7282._0x4d7f7e)+_0x5f0e82(_0x3a7282._0x3197b6)]===null)&&_0x15fb5c<_0x3e4de8){if(_0x11082a[_0x5f0e82(_0x3a7282._0x4d0cba)+_0x5f0e82(_0x3a7282._0x248322)+'y'])_0x11082a[_0x38118b(_0x3a7282._0x5abdcf)+_0x38118b(_0x3a7282._0x248322)+'y']();return{'valid':![],'tier':null,'reason':_0x5f0e82(_0x3a7282._0x38995d)+_0x5f0e82(_0x3a7282._0x4fed6e)+_0x5f0e82(_0x3a7282._0x242d57)+_0x38118b(_0x3a7282._0x275ffa)+_0x38118b(_0x3a7282._0x1ab587)+_0x5f0e82(0x11e)+_0x5f0e82(_0x3a7282._0x26856f)+_0x38118b(_0x3a7282._0x5dec2e)};}const _0x17d9ce=typeof atob!==_0x5f0e82(_0x3a7282._0x19138f)+_0x38118b(_0x3a7282._0x37c44e)+'d'?atob:_0x39b027=>Buffer[_0x5f0e82(0x155)](_0x39b027,_0x38118b(0x123)+'64')[_0x5f0e82(0xfa)+_0x5f0e82(0x97)](_0x38118b(0xb2)+'ry');if(_0x3531e8[_0x5f0e82(_0x3a7282._0xac7a8b)+_0x38118b(0xbf)+'th'](_0x5f0e82(0x17b)+_0x38118b(_0x3a7282._0x276d85)+'-'))try{const _0x5d87da=_0x26a3b7[_0x38118b(_0x3a7282._0x407305)+_0x38118b(_0x3a7282._0x5d2d7a)+'g'](0x9),_0x1de688=_0x17d9ce(_0x5d87da),_0x235e93=new Uint8Array(_0x1de688[_0x38118b(_0x3a7282._0x257dca)+'th']);for(let _0xa9ccca=0x0;_0xa9ccca<_0x1de688[_0x5f0e82(0x138)+'th'];_0xa9ccca++){_0x235e93[_0xa9ccca]=_0x1de688[_0x38118b(_0x3a7282._0x400448)+_0x38118b(_0x3a7282._0x4b0415)+'At'](_0xa9ccca);}let _0x5bec08='';for(let _0x795e7f=0x0;_0x795e7f<_0x235e93[_0x38118b(_0x3a7282._0x257dca)+'th'];_0x795e7f++){_0x5bec08+=_0x235e93[_0x795e7f][_0x5f0e82(_0x3a7282._0x17e873)+_0x38118b(_0x3a7282._0x1b99d0)](0x10)[_0x38118b(_0x3a7282._0x15e7fa)+_0x5f0e82(_0x3a7282._0xd43ee5)](0x2,'0');}const _0x35b097=_0xcef9d2[_0x5f0e82(0xe6)+'E'](BigInt,'0x'+_0x5bec08),_0xc564d7=_0xf5483f(_0x35b097,_0x4026ef,_0x51dd29),_0x21ff3e=_0x339466(_0xc564d7);if(_0x21ff3e[_0x5f0e82(0xed)+_0x5f0e82(_0x3a7282._0xe3f882)+'th'](_0x5f0e82(_0x3a7282._0x2e57a2)+_0x38118b(0xb3)+_0x5f0e82(_0x3a7282._0x5a7854))){const _0x4f8b24=parseInt(_0x21ff3e[_0x38118b(_0x3a7282._0x273500)+_0x38118b(_0x3a7282._0x5d2d7a)+'g'](0xb),0xa);if(!isNaN(_0x4f8b24)){if(_0x15fb5c<_0x4f8b24)return{'valid':!![],'tier':_0x5f0e82(_0x3a7282._0x2f9f64)+'S','expires':_0x4f8b24};if(_0x11082a[_0x5f0e82(_0x3a7282._0x2cb3d2)+_0x38118b(_0x3a7282._0x1b5a9e)+'d'])_0x11082a[_0x38118b(_0x3a7282._0x2cad4b)+_0x5f0e82(_0x3a7282._0x1b5a9e)+'d'](_0x38118b(_0x3a7282._0x266a78)+'t');return{'valid':![],'tier':null,'reason':_0x38118b(_0x3a7282._0x4aaea7)+_0x5f0e82(0x92)+_0x5f0e82(_0x3a7282._0x39232d)+'d'};}}}catch(_0x52dca7){return{'valid':![],'tier':null,'reason':_0x38118b(0xf8)+_0x38118b(0x1aa)+_0x5f0e82(_0x3a7282._0x48c870)+_0x5f0e82(_0x3a7282._0x28748b)+_0x5f0e82(0xfd)+_0x5f0e82(0x121)};}if(_0x3531e8[_0x38118b(_0x3a7282._0x1607dd)+_0x38118b(_0x3a7282._0xe3f882)+'th'](_0x5f0e82(0x9c)+_0x38118b(_0x3a7282._0x470d50)))try{const _0x36245f=_0x26a3b7[_0x38118b(0x180)+_0x5f0e82(0x1b2)+'g'](0x7),_0x45a981=_0x17d9ce(_0x36245f),_0x2ebd8b=new Uint8Array(_0x45a981[_0x5f0e82(_0x3a7282._0x52dec5)+'th']);for(let _0x5920ac=0x0;_0x5920ac<_0x45a981[_0x38118b(_0x3a7282._0x257dca)+'th'];_0x5920ac++){_0x2ebd8b[_0x5920ac]=_0x45a981[_0x38118b(_0x3a7282._0x556d59)+_0x38118b(0x14b)+'At'](_0x5920ac);}let _0x3cf518='';for(let _0x1c7033=0x0;_0x1c7033<_0x2ebd8b[_0x38118b(_0x3a7282._0x341d0c)+'th'];_0x1c7033++){_0x3cf518+=_0x2ebd8b[_0x1c7033][_0x5f0e82(_0x3a7282._0x955bd4)+_0x38118b(_0x3a7282._0x375a96)](0x10)[_0x38118b(_0x3a7282._0x330948)+_0x38118b(_0x3a7282._0x29085e)](0x2,'0');}const _0x187940=_0xcef9d2[_0x5f0e82(0x192)+'S'](BigInt,_0xcef9d2[_0x5f0e82(_0x3a7282._0x3170bc)+'J']('0x',_0x3cf518)),_0x12cb22=_0xf5483f(_0x187940,_0x4026ef,_0x51dd29),_0x5b593d=_0x339466(_0x12cb22);if(_0x5b593d[_0x5f0e82(_0x3a7282._0x5723bb)+_0x5f0e82(_0x3a7282._0xe3f882)+'th'](_0xcef9d2[_0x5f0e82(0x96)+'X'])){const _0x2d752e=_0x5b593d[_0x5f0e82(_0x3a7282._0x31a986)+'t']('-');if(_0x2d752e[_0x38118b(0x138)+'th']>=0x5){const _0x12fe0a=_0x2d752e[0x2],_0x2928bc=parseInt(_0x2d752e[0x4],0xa);if(!isNaN(_0x2928bc)){if(_0x15fb5c<_0x2928bc)return{'valid':!![],'tier':_0x12fe0a,'expires':_0x2928bc};if(_0x11082a[_0x5f0e82(_0x3a7282._0x12b791)+_0x38118b(0x1ab)+'d'])_0x11082a[_0x5f0e82(_0x3a7282._0x1563cc)+_0x38118b(_0x3a7282._0x1b5a9e)+'d'](_0x5f0e82(_0x3a7282._0x422dec));return{'valid':![],'tier':null,'reason':_0xcef9d2[_0x38118b(0xff)+'z']};}}}}catch(_0x581f8b){return{'valid':![],'tier':null,'reason':_0xcef9d2[_0x5f0e82(_0x3a7282._0x588e73)+'d']};}if(_0x496437[_0x5f0e82(_0x3a7282._0x52dec5)+'th']===0x4&&_0x496437[0x0]==='PS'&&[_0x38118b(_0x3a7282._0x533395),_0x38118b(_0x3a7282._0x3f5012)+'S',_0xcef9d2[_0x38118b(_0x3a7282._0x1bc303)+'f'],_0x5f0e82(0xdd),_0x38118b(_0x3a7282._0x22da39)+_0x5f0e82(_0x3a7282._0x55812f)+'SE'][_0x38118b(_0x3a7282._0x3020a0)+_0x38118b(_0x3a7282._0x5e1fd2)](_0x496437[0x1])){const _0x2a7c5a=_0x496437[0x1],_0xfad0c9=_0x496437[0x2],_0x399a7b=_0x496437[0x3],_0xdb8eb4=_0x5f0e82(_0x3a7282._0x1a380f)+_0x38118b(0xaf)+_0x38118b(0xa3)+_0x5f0e82(_0x3a7282._0x1dd8fa)+'@#',_0x33cd77=_0xfad0c9+_0xdb8eb4+_0x2a7c5a;let _0x1a20c6=0x0;for(let _0x18167e=0x0;_0x18167e<_0x33cd77[_0x5f0e82(_0x3a7282._0x33dec3)+'th'];_0x18167e++){_0x1a20c6+=_0xcef9d2[_0x38118b(_0x3a7282._0x417a2c)+'g'](_0x33cd77[_0x38118b(_0x3a7282._0x370e2b)+_0x5f0e82(_0x3a7282._0x107519)+'At'](_0x18167e),_0x18167e+0x1);}const _0x6a3b3f=(_0x1a20c6%0x270f)[_0x5f0e82(_0x3a7282._0x153c09)+_0x38118b(_0x3a7282._0x13da56)]()[_0x38118b(_0x3a7282._0x3b6932)+_0x5f0e82(_0x3a7282._0xd43ee5)](0x4,'0');if(_0xcef9d2[_0x38118b(_0x3a7282._0x3c1f67)+'j'](_0x399a7b,_0x6a3b3f))return{'valid':!![],'tier':_0x2a7c5a};}if(_0x26a3b7[_0x38118b(_0x3a7282._0x1607dd)+_0x5f0e82(_0x3a7282._0xe3f882)+'th'](_0xcef9d2[_0x5f0e82(_0x3a7282._0x38b374)+'W'])&&_0x26a3b7[_0x38118b(_0x3a7282._0x371193)+'t']('.')[_0x38118b(_0x3a7282._0x257dca)+'th']===0x3)try{const [_0x3c9514,_0x4f38b3,_0x2d6627]=_0x26a3b7[_0x5f0e82(_0x3a7282._0x31a986)+'t']('.');let _0x45d68c=_0x2d6627[_0x38118b(0x186)+_0x5f0e82(_0x3a7282._0x4e7147)](/-/g,'+')[_0x38118b(_0x3a7282._0x3d5f88)+_0x5f0e82(_0x3a7282._0x34f3d7)](/_/g,'/');while(_0x45d68c[_0x5f0e82(_0x3a7282._0x68a180)+'th']%0x4)_0x45d68c+='=';const _0x5e9dd7=_0xcef9d2[_0x5f0e82(_0x3a7282._0x311850)+'F'](_0x17d9ce,_0x45d68c);let _0x4ba4bc='';for(let _0x3e2e43=0x0;_0x3e2e43<_0x5e9dd7[_0x38118b(_0x3a7282._0x4683ac)+'th'];_0x3e2e43++){_0x4ba4bc+=_0x5e9dd7[_0x38118b(_0x3a7282._0x556d59)+_0x5f0e82(_0x3a7282._0x52eae7)+'At'](_0x3e2e43)[_0x38118b(0xfa)+_0x38118b(_0x3a7282._0x13da56)](0x10)[_0x5f0e82(_0x3a7282._0x29f2f3)+_0x38118b(_0x3a7282._0x2bd30b)](0x2,'0');}const _0x17c212=BigInt('0x'+_0x4ba4bc),_0x236db4=_0xf5483f(_0x17c212,_0x4026ef,_0x51dd29);let _0x4c2c99=_0x236db4[_0x5f0e82(_0x3a7282._0x955bd4)+_0x5f0e82(_0x3a7282._0x4ef8f4)](0x10);if(_0x4c2c99[_0x5f0e82(_0x3a7282._0x68a180)+'th']%0x2!==0x0)_0x4c2c99=_0xcef9d2[_0x38118b(_0x3a7282._0x24e5bf)+'n']('0',_0x4c2c99);const _0x1bd329=_0xcef9d2[_0x5f0e82(_0x3a7282._0x26a21e)+'F'](_0x26e862,_0xcef9d2[_0x38118b(0xa6)+'H'](_0x3c9514+'.',_0x4f38b3));if(_0x4c2c99[_0x38118b(_0x3a7282._0x3461f4)+_0x5f0e82(0xe7)](_0x1bd329)){const _0x465998=_0x17d9ce(_0x4f38b3[_0x38118b(_0x3a7282._0x33a1ec)+_0x38118b(_0x3a7282._0x4e7147)](/-/g,'+')[_0x38118b(_0x3a7282._0x33a1ec)+_0x38118b(_0x3a7282._0x1d48f0)](/_/g,'/')),_0x33df7c=JSON[_0x38118b(_0x3a7282._0x5710fd)+'e'](_0x465998);if(_0x33df7c[_0x38118b(_0x3a7282._0x32777e)]&&_0x15fb5c/0x3e8<_0x33df7c[_0x38118b(_0x3a7282._0x32777e)])return{'valid':!![],'tier':_0x33df7c[_0x38118b(0xf0)]||_0xcef9d2[_0x38118b(_0x3a7282._0x259235)+'r'],'expires':_0x33df7c[_0x38118b(_0x3a7282._0x32777e)]*0x3e8};else{if(_0x11082a[_0x5f0e82(_0x3a7282._0x2cad4b)+_0x5f0e82(_0x3a7282._0x4f324d)+'d'])_0x11082a[_0x38118b(_0x3a7282._0x2cb3d2)+_0x38118b(0x1ab)+'d'](_0x38118b(0x1b1));return{'valid':![],'tier':null,'reason':_0x5f0e82(_0x3a7282._0x14f280)+_0x38118b(0x14f)+_0x38118b(_0x3a7282._0x2eb280)};}}}catch(_0xa5e316){return{'valid':![],'tier':null,'reason':_0xcef9d2[_0x38118b(0x130)+'r']};}return{'valid':![],'tier':null,'reason':_0x38118b(_0x3a7282._0x197d99)+_0x38118b(0x1a4)+_0x38118b(_0x3a7282._0x4ff005)+'at'};}}typeof globalThis!==_0x15a214(0x163)+_0x15a214(_0x4ec852._0x1ae232)+'d'&&(globalThis[_0x15a214(0xd4)+_0x15a214(0xca)+_0x3c0dad(_0x4ec852._0x591ad3)+'er']=LicenseManager),typeof _0x186ecd!==_0x15a214(_0x4ec852._0x73b10c)+_0x15a214(0x9b)+'d'&&(_0x186ecd[_0x15a214(_0x4ec852._0x513fa6)+_0x15a214(0xca)+_0x15a214(_0x4ec852._0x591ad3)+'er']=LicenseManager),typeof window!==_0x15a214(_0x4ec852._0x73b10c)+_0x3c0dad(0x9b)+'d'&&(window[_0x15a214(_0x4ec852._0x513fa6)+_0x15a214(_0x4ec852._0x2e9572)+_0x3c0dad(_0x4ec852._0x591ad3)+'er']=LicenseManager),_0xcef9d2[_0x3c0dad(_0x4ec852._0x192b94)+'q'](typeof exports,_0x15a214(_0x4ec852._0x73b10c)+_0x3c0dad(_0x4ec852._0x1ae232)+'d')&&(_0xcef9d2[_0x15a214(_0x4ec852._0x3489ad)+'m'](typeof module,_0xcef9d2[_0x3c0dad(_0x4ec852._0x1c6ff7)+'W'])&&module[_0x15a214(_0x4ec852._0x431f43)+_0x3c0dad(_0x4ec852._0x4335b6)]&&(module[_0x15a214(_0x4ec852._0x431f43)+_0x15a214(0x17d)]=LicenseManager),exports[_0x3c0dad(_0x4ec852._0x513fa6)+_0x3c0dad(_0x4ec852._0x2e9572)+_0x15a214(_0x4ec852._0x591ad3)+'er']=LicenseManager);}(typeof globalThis!==_0xa13bc9(0x163)+_0xa13bc9(0x9b)+'d'?globalThis:typeof window!==_0x35ec26(0x163)+_0xa13bc9(0x9b)+'d'?window:this));
11
+ function _0x59b1(_0x4842dd,_0x5ca26d){_0x4842dd=_0x4842dd-0x185;const _0x5cffe8=_0x5cff();let _0x59b16f=_0x5cffe8[_0x4842dd];if(_0x59b1['pjGpCv']===undefined){var _0x3f9ed5=function(_0xd2c79c){const _0x1c56e4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e6854='',_0x2d7d9f='';for(let _0x24722f=0x0,_0xceb422,_0x1771de,_0x28fd22=0x0;_0x1771de=_0xd2c79c['charAt'](_0x28fd22++);~_0x1771de&&(_0xceb422=_0x24722f%0x4?_0xceb422*0x40+_0x1771de:_0x1771de,_0x24722f++%0x4)?_0x5e6854+=String['fromCharCode'](0xff&_0xceb422>>(-0x2*_0x24722f&0x6)):0x0){_0x1771de=_0x1c56e4['indexOf'](_0x1771de);}for(let _0x178950=0x0,_0x31026b=_0x5e6854['length'];_0x178950<_0x31026b;_0x178950++){_0x2d7d9f+='%'+('00'+_0x5e6854['charCodeAt'](_0x178950)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d7d9f);};_0x59b1['LImaoW']=_0x3f9ed5,_0x59b1['fUAqKc']={},_0x59b1['pjGpCv']=!![];}const _0xb7427c=_0x5cffe8[0x0],_0x4d41bb=_0x4842dd+_0xb7427c,_0x3d4a3d=_0x59b1['fUAqKc'][_0x4d41bb];return!_0x3d4a3d?(_0x59b16f=_0x59b1['LImaoW'](_0x59b16f),_0x59b1['fUAqKc'][_0x4d41bb]=_0x59b16f):_0x59b16f=_0x3d4a3d,_0x59b16f;}function _0x5cff(){const _0x1aee47=['yMfZzq','odeWnq','mJK2ma','ntaXoq','qM5jrq','otm5nq','mZiXoq','v2L0Aa','mJC2oq','mJyZnq','DMfSAq','m3W1Fa','B25bBG','DhnxAq','ndKXnq','odG1nW','BM93','nZyWmW','nJu1na','y0fgDa','lvbjta','vgLTzq','nty5mG','x1nbta','B2HhuW','zxHWBW','x3rPBq','nZCXnW','odKYnq','mtqYmq','y3j5Ca','mte0oq','zgDPrW','r0XUzG','yxnL','nZq2mq','nZa2mq','mdmYma','sw52yq','mJC2nW','ufjp','odyYoa','C2vLBG','oteYnq','mZy5ma','ntu0nW','nta1oa','DgvjsW','y2HHCG','vwXAzW','mJa2nG','ntC0nG','ntC0oq','ufmTuG','nNPiDfnJBG','mtqWoeDzvhPZqG','CgfKuW','tgLJzq','ntaXnW','ndi1mW','wuHHDq','BgvK','C2v0sq','Bw9JAW','BhKGza','q2HHCG','A2v5ia','nJiYmZvvEejMAfm','ndy4ma','DgLLCG','ntK2na','mZGWmW','DgfYDa','B24GzG','mJa2nq','sfLjwa','mJqYoa','mZa5nG','uLnb','vf8Yma','mdGYoq','mJCXmq','mdG2nq','nJi2ma','mJe2ntG2u2rABNzZ','ywDL','mtu0oq','ChnFBa','CgLYzq','otG2oa','nJG5mJi5r21jr2Xu','DgvK','wMz3CW','mZGXmW','mJCZna','zxHWAq','mJu4mq','zgf0Aq','suXpva','ode0mG','nJqYma','otm3oq','mtm5nZjqqKz2uKC','ndyZnW','C2XPyW','zxHW','nJC4mq','ywnL','BM9Tyq','uLbssq','ndu2mG','mta5nW','ndeYoq','ndaWnW','nZmWoa','Cg93','qunZrG','tM9RuW','tgfIwa','ndG4mG','t1qT','nZaYmG','C3vICW','q2XVyW','mtyYnG','otG3ndK2ENfwyNnf','Dg9vCa','nJm0nW','luXjqW','DgLVBG','mZuYmq','BNnLtq','sLDuia','CgfYCW','mty0oa','ntu4nW','nteXoq','DcbLEa','tunTtq','ndC5nG','nZyWnq','zw5KCW','mhWX','nta0na','mdG1nW','igzHAq','odCYoq','nde1mW','mJy4ma','ody1mG','odiZnW','ndq3nW','u0rl','C3rVCG','zgvJCG','uujdvG','ntaZnG','ntGXoa','mdC1na','zgvK','nZCWnG','CgrMuW','mtK3na','yw5HzW','y29UyW','sLDu','nZu5nq','Aw5JBa','nte1oa','oti5na','nJG4na','ndyWoa','nZqYna','mJjXExbyqMO','ugLSBW','mJeZmq','uLnbia','mZq4nG','ote2oq','odK3oq','EvfMwa','ndC3mG','mtCYoq','BhvfsW','mZyWoa','nJmWmW','mta0ma','mJG1mG','rfDmyG','odqYoq','ntaZna','CMLUzW','oda1nW','nty3ma','ntG4na','CxLJsa','wLreuW','AYbYBW','yLLHDG','ywLSzq','BgvUzW','nti0mG','BgLKia','mZG4nG','nZmXmG','nZG2oq','odu1oq','nZa4nW','nJa4mW','ufmTua','nta4nG','C2vzDq','nJiXmq','zu1gDq','sePAzG','ru5urq','mZuXnMTTzg5kyq','odiXmG','C3rHCG','mtiWmq','CMvK','mti3nZa2meHSveL1tW','mJe4oa','mtyWmG','nJi0mG','odmXnW','otyWoq','nJKZmG','A2TJEG','zM9YBq','BxvWua','ote4mG','yMLUyq','nZm1oa','otKWma','nJa1nG','ota4ma','mJzFiq','mtmZnG','CMHQrG','B25fEa','mJm4oq','odyXmG','DgvT','nde0oq','vevbtq','nZq3ma','B1fkta','mJmZna','C3bSAq','qK5hqq','u0eT','DhjPBG','tM8GAW','mNW0Fa','Dg9tDa','nZyXna','vuXWzG','DhjPBq','mZC2ma','mZq5na','qNzWuq','odq5nW','yxn0xW','zxrLyW','B21HBa','ody2mG','CgvYqW','mte3mq','mdy0nW','DwrLCW','mJeYnW','Dw5Kzq','DMvKBW','mZiYma','vM1uEG','ndy3oa','mty2nwjLuw1Ssa','DcbKzq','mdq4nq','CM92Aq','q29Kzq','Exb0Aq','mtqXmq','zMLUzq','zNjVBq','otaZnW','mdu5mq','nJG5oq','mtKWnq','nZK3oq','t0vn','y2SGyq','nJq5oq','ntmXoq','mJuYnW','otaYmG','mdy5na','zxKGCa','rhPVva','z2v0sq','BgXIyq','mZu0ma','nJy4mq','zxLk','CNrZ','mdmXmq','CMvWBa','nJKXmG'];_0x5cff=function(){return _0x1aee47;};return _0x5cff();}const _0x5bf5a4=_0x59b1,_0x3e9295=_0x59b1;(function(_0x18fe79,_0x27a8f5){const _0x3eadce={_0xc39e6d:0x1ce,_0x581c81:0x1df,_0x11e1d5:0x1c1,_0x2b8393:0x2a0,_0x451a28:0x1f1,_0x255d1d:0x1c2,_0x358946:0x1e5,_0x392cfd:0x238},_0x5340f0=_0x59b1,_0x556c0a=_0x59b1,_0x3a87cb=_0x18fe79();while(!![]){try{const _0x487211=parseInt(_0x5340f0(_0x3eadce._0xc39e6d))/0x1+parseInt(_0x5340f0(_0x3eadce._0x581c81))/0x2*(parseInt(_0x5340f0(_0x3eadce._0x11e1d5))/0x3)+-parseInt(_0x5340f0(0x208))/0x4+parseInt(_0x5340f0(_0x3eadce._0x2b8393))/0x5*(parseInt(_0x5340f0(0x263))/0x6)+-parseInt(_0x556c0a(_0x3eadce._0x451a28))/0x7*(parseInt(_0x5340f0(_0x3eadce._0x255d1d))/0x8)+parseInt(_0x5340f0(_0x3eadce._0x358946))/0x9+parseInt(_0x556c0a(0x268))/0xa*(parseInt(_0x5340f0(_0x3eadce._0x392cfd))/0xb);if(_0x487211===_0x27a8f5)break;else _0x3a87cb['push'](_0x3a87cb['shift']());}catch(_0x511ce5){_0x3a87cb['push'](_0x3a87cb['shift']());}}}(_0x5cff,0x32ba6),function(_0x5b81f3){const _0x52ea5b={_0x40247b:0x24f,_0x5dba61:0x19f,_0xd7d333:0x203,_0x234cd2:0x278,_0x15b926:0x186,_0x4eaad5:0x1b3,_0x158def:0x29b,_0x2d1d9b:0x2a7,_0x1522fa:0x247,_0x3e6b63:0x23a,_0x1747ca:0x2ad,_0x25dfe9:0x245,_0x4bb27d:0x29f,_0x485162:0x283,_0x2b05af:0x254,_0x3ec1d3:0x1d2,_0x295347:0x235,_0x483833:0x21f,_0x29e5ab:0x18e,_0x340b78:0x21e,_0x969044:0x24b,_0x3ff2bb:0x231,_0x58efbd:0x1d7,_0x1cb912:0x241,_0x177700:0x217,_0x4197f8:0x1a1,_0x35e546:0x18c,_0x1af06f:0x19d,_0x226fae:0x266,_0x2905fa:0x191,_0xdbf585:0x2a9,_0x2aae6f:0x1f2,_0x8854f1:0x29a,_0x3b2252:0x28b,_0x6fafd7:0x2ac,_0x335bf2:0x2b1,_0x4d53ff:0x27c,_0x5cc057:0x25b,_0x12bfec:0x2b0,_0x1bcdbb:0x229,_0x31f83a:0x1f0,_0x2e45bf:0x1b6,_0x3cba36:0x236,_0x3f92eb:0x1fa,_0x12cf92:0x1dc,_0x40c055:0x2a2,_0x2bf391:0x202,_0x4d1e78:0x1cf,_0x3a379e:0x1b8,_0x2423bd:0x1dd,_0x1c486e:0x21a,_0x138bae:0x1b4,_0x52ceb1:0x19c,_0x1a2308:0x1aa,_0x18f048:0x1fb,_0x2b2960:0x1e1,_0x1979cc:0x25d,_0x1b1c2f:0x274,_0x344828:0x207,_0x42b2c2:0x27d,_0x3d8349:0x1db,_0x2b04f4:0x1f5,_0x5765b5:0x1a7,_0x50712e:0x26c,_0x1b0f2e:0x1a8,_0x15da5c:0x276,_0xfe609b:0x2ab,_0x4430b1:0x23e,_0x54d924:0x298,_0x2d0fa6:0x221,_0x12236e:0x21d,_0x331e13:0x1a6,_0x2ac755:0x2b3,_0x110031:0x228,_0xee7d74:0x291,_0x5c8372:0x26b,_0x1a40a8:0x26e,_0x2f4763:0x2b9,_0x11a419:0x1f9,_0x28c7e3:0x1ef,_0x5379c8:0x23c,_0x231bfd:0x295,_0x41964d:0x20a,_0x238e9a:0x279,_0x567665:0x190,_0x4adaa0:0x240,_0x5df2a7:0x24c,_0x3f451e:0x1be,_0x2a63f3:0x193,_0x7b9fb5:0x1de,_0x416965:0x1d5,_0x5b8f39:0x234,_0x56011b:0x25f,_0x2c30b3:0x18d,_0x2489c4:0x185,_0x5571bc:0x2b2,_0x4d3219:0x1b9,_0xfee2d0:0x264,_0x490c64:0x1fd,_0xa0dfbb:0x281,_0x1c2ccd:0x199,_0x304b41:0x20d,_0x26c37b:0x204,_0x5b3ef2:0x272,_0x47336e:0x256,_0x14b851:0x244,_0x526b67:0x227,_0x58b2b1:0x213,_0x43a78f:0x2aa,_0x2123e4:0x1fc,_0x24b5b2:0x246,_0x3de531:0x1e8,_0x4e550f:0x1ae,_0x1e3c0b:0x248,_0xb964b0:0x21b,_0x1030c1:0x24d,_0x134af3:0x25a,_0x1b6eee:0x18a,_0x16905c:0x28f,_0x4254dc:0x26a,_0x5691f9:0x2b4,_0x334766:0x211,_0x152d43:0x194,_0x553879:0x2a6,_0x56830a:0x22b,_0x4e8049:0x212,_0x4e11b7:0x1c4,_0x270e6a:0x20e,_0x398220:0x22e,_0x39a5d0:0x1bc,_0x3efa05:0x1c4,_0x237cb6:0x20e,_0x523c97:0x271,_0x49d7c6:0x22e,_0x5ea6d9:0x271,_0x5f06e3:0x2a7,_0x2aa3d3:0x2a7,_0x4101e4:0x1a4,_0x3da520:0x187,_0x4cfef5:0x1c4},_0x2240e9={_0x342355:0x2b5,_0x522e6e:0x2a3,_0x5c624e:0x209,_0x3506d2:0x1ad,_0x33bd23:0x284,_0x2f09c1:0x1ca,_0x3f83fd:0x1a0,_0x56fc91:0x224,_0x46fb87:0x1e0,_0x421108:0x224,_0x263294:0x1e0,_0xda4032:0x27e,_0x415731:0x1e2,_0x3f960a:0x292,_0x24818b:0x1a5,_0x145d86:0x260,_0x417878:0x1a0,_0x4eb79c:0x1ca,_0x2a0e2f:0x224,_0x5b94c2:0x1e0,_0xe6a47a:0x1c9,_0x5e21a5:0x27e,_0x438c78:0x1e2,_0x4f6de5:0x1b5,_0x6d60e:0x1a5,_0x39d80c:0x28a,_0x22a21a:0x24a,_0x5c64a6:0x1ca,_0xeda16d:0x1ca,_0x22a3ea:0x1a0,_0x31cc06:0x197,_0x21ab66:0x294,_0x762f5c:0x197,_0x5c1cb5:0x294,_0x279ad6:0x250,_0x195f51:0x2b8,_0xdc5676:0x2af,_0x3eca28:0x1f7,_0x4616e2:0x1cb,_0x3005d8:0x293,_0x25fef0:0x1e6,_0x15b65d:0x265,_0x14a75b:0x25c,_0x53c40d:0x1ed,_0x2f8c96:0x253,_0x4678d6:0x1bb,_0x54e89f:0x2a4,_0x2bb5d6:0x253,_0x54c798:0x28a,_0x7b6d06:0x24a,_0x24be9a:0x1c3,_0x3411c1:0x1d3,_0x377b3f:0x261,_0x4fbc68:0x261,_0x329501:0x265,_0x56848f:0x198,_0x24903f:0x24e,_0x46dc1f:0x18f,_0x179c95:0x27b,_0x690e6e:0x1e3,_0x1e4d93:0x239,_0x5b9c21:0x2a1,_0x989c8a:0x20c,_0x6a9f9e:0x21c,_0xd9dc2d:0x1c8,_0x32b8df:0x198,_0x552adb:0x1c0,_0x174925:0x286,_0x1746d2:0x205,_0x47f6c5:0x253,_0x3fc7ba:0x253,_0x335e9e:0x1c3,_0x4551a2:0x1d3,_0x5d02c2:0x1c7,_0x1512fc:0x265,_0x5dbe49:0x20b,_0x543d00:0x1a3,_0x124b53:0x253,_0x5472fc:0x1e3,_0x22ad78:0x1d9,_0x2135d1:0x1cd,_0x24714a:0x23b,_0x593210:0x225,_0xdd98e0:0x252,_0x4be02c:0x1b3,_0x10776f:0x280,_0x132beb:0x2ae,_0x50ed04:0x262,_0x158932:0x1f8,_0x54d949:0x232,_0x402761:0x299,_0x3f503e:0x27a,_0x1b0e06:0x242,_0x460f02:0x1bb,_0x4b97e2:0x28a,_0x3c1581:0x24a,_0x5ff0c6:0x290,_0x3166da:0x284,_0x2b0cfe:0x189,_0x3aabf4:0x1f6,_0x3cb8e7:0x253,_0x4ee19c:0x285,_0x33f054:0x2a4,_0x155ffd:0x28a,_0x12e181:0x24a,_0x4ceac4:0x1d3,_0x3ceff5:0x28a,_0x428ddb:0x24a,_0x25650d:0x271,_0x3f2b8e:0x253,_0x528f03:0x26f,_0x42b8d7:0x28c,_0x524af7:0x218,_0x40eb4d:0x192,_0x2b07cd:0x1f4,_0x21d4a3:0x1d6,_0x3556fa:0x1d0,_0x130ddf:0x1f4,_0x2fc3fc:0x1e3,_0x6cdd05:0x27b,_0x20529b:0x230,_0x2f36ae:0x1ea,_0xd6198d:0x267,_0x5ebb09:0x20f,_0x140551:0x195,_0x3637ad:0x1ec,_0x543936:0x252,_0x55040d:0x1b1,_0xf0068c:0x255,_0x2792fa:0x270},_0x5ab626={_0x5e14f3:0x1fe,_0x5af576:0x253,_0x47f16b:0x19e,_0x37de13:0x226,_0x49eece:0x1ab,_0x3810a9:0x1d6,_0x31d7ee:0x29e,_0x530552:0x1f3,_0x413aad:0x196,_0xcb1660:0x219,_0x392afa:0x284,_0x58adea:0x242,_0x29e284:0x22f,_0x2e5d61:0x201,_0x480cb2:0x26f,_0x30594a:0x1ff,_0x2e629a:0x200,_0x56f67b:0x2b6,_0x3f972e:0x200,_0x365ed:0x215,_0x35948b:0x22c,_0x10e50e:0x28a},_0x2cc759={_0x2fbd00:0x1ba,_0x400295:0x253,_0x1c4d2b:0x1bb,_0x418c48:0x28a,_0x39e8a1:0x1c3},_0x4cc67f={_0x44c5b2:0x28a,_0x4c0883:0x24a,_0x199a33:0x271,_0x55d286:0x253,_0x385e55:0x2a8,_0x51c7ec:0x1cc,_0x5cebd8:0x2a4,_0x4134f5:0x205},_0x358a45={_0x4ddc42:0x1ac,_0x47bb5a:0x23f},_0x2208a8=_0x59b1,_0x35d0fc=_0x59b1,_0x116a4a={'GLnfY':function(_0x4374f8,_0x56f96c){return _0x4374f8%_0x56f96c;},'yQfXk':function(_0x115c6c,_0x401efc){return _0x115c6c*_0x401efc;},'mupPa':function(_0x449e88,_0x5135be){return _0x449e88!==_0x5135be;},'HYIXY':function(_0x1c6920,_0x3e3680){return _0x1c6920<_0x3e3680;},'teIKM':function(_0x41e425,_0xd6b4e4){return _0x41e425<_0xd6b4e4;},'cAFty':function(_0x469e42,_0x46b97c){return _0x469e42<_0x46b97c;},'QBCVN':function(_0x2ddb1f,_0x2fcebb){return _0x2ddb1f*_0x2fcebb;},'dgiGf':function(_0x325fda,_0x5cc9f1){return _0x325fda*_0x5cc9f1;},'seYuH':function(_0x35588b,_0x4cede1){return _0x35588b>>_0x4cede1;},'VmTzo':function(_0x4509c1,_0x13e830){return _0x4509c1<<_0x13e830;},'LabXP':function(_0x28f8a0,_0x27a149){return _0x28f8a0|_0x27a149;},'luEKh':function(_0x4a0d2e,_0x48d980){return _0x4a0d2e+_0x48d980;},'kkczB':function(_0x310489,_0x3aa769){return _0x310489+_0x3aa769;},'ACsFN':function(_0x31b1c5,_0xdbe871){return _0x31b1c5&_0xdbe871;},'NokSE':function(_0x11a4ca,_0x9a60b2){return _0x11a4ca^_0x9a60b2;},'vedoI':function(_0x4ceb7c,_0x42bfc4,_0x3bd5ae){return _0x4ceb7c(_0x42bfc4,_0x3bd5ae);},'DzoTv':function(_0x2103ad,_0x7ec269){return _0x2103ad>>>_0x7ec269;},'MCmMI':function(_0x4db7ee,_0x4376d1){return _0x4db7ee&_0x4376d1;},'pdfSC':function(_0xbedb7b,_0x36463a){return _0xbedb7b<_0x36463a;},'eMFuK':function(_0x147d76,_0x194abd){return _0x147d76===_0x194abd;},'HJZfh':function(_0x5ce707,_0x268740){return _0x5ce707(_0x268740);},'qycHm':_0x2208a8(_0x52ea5b._0x40247b)+_0x35d0fc(_0x52ea5b._0x5dba61)+_0x35d0fc(_0x52ea5b._0xd7d333),'BnIER':_0x35d0fc(0x280)+'S','YHauQ':function(_0x10c142,_0x320cdb){return _0x10c142(_0x320cdb);},'ohGSf':function(_0x470488,_0x4a9de3){return _0x470488>=_0x4a9de3;},'bYavG':function(_0x3f81e1,_0x11690b){return _0x3f81e1===_0x11690b;},'ZfwsV':_0x2208a8(0x223),'rhjFn':_0x35d0fc(0x24f)+_0x2208a8(0x1a2)+_0x35d0fc(0x1da)+_0x35d0fc(_0x52ea5b._0x234cd2)+'@#','BvpQc':_0x35d0fc(_0x52ea5b._0x15b926),'BNGAc':function(_0x18564d,_0x290af4){return _0x18564d<_0x290af4;},'ULpfT':function(_0x40dc45,_0x289749){return _0x40dc45+_0x289749;},'oQJLc':_0x35d0fc(_0x52ea5b._0x4eaad5),'DWLbs':function(_0x515157,_0xc952d8){return _0x515157(_0xc952d8);},'UlZgU':_0x2208a8(_0x52ea5b._0x158def)+_0x2208a8(_0x52ea5b._0x2d1d9b)+'d'},_0x50febf=_0x116a4a[_0x35d0fc(_0x52ea5b._0x1522fa)+'s'](BigInt,_0x35d0fc(_0x52ea5b._0x3e6b63)+_0x35d0fc(_0x52ea5b._0x1747ca)+_0x35d0fc(_0x52ea5b._0x25dfe9)+_0x35d0fc(0x249)+_0x2208a8(_0x52ea5b._0x4bb27d)+_0x35d0fc(_0x52ea5b._0x485162)+_0x2208a8(_0x52ea5b._0x2b05af)+_0x35d0fc(_0x52ea5b._0x3ec1d3)+_0x35d0fc(0x1e4)+_0x2208a8(_0x52ea5b._0x295347)+_0x35d0fc(_0x52ea5b._0x483833)+_0x35d0fc(_0x52ea5b._0x29e5ab)+_0x2208a8(_0x52ea5b._0x340b78)+_0x35d0fc(_0x52ea5b._0x969044)+_0x35d0fc(_0x52ea5b._0x3ff2bb)+_0x2208a8(0x243)+_0x35d0fc(0x26d)+_0x35d0fc(0x277)+_0x35d0fc(_0x52ea5b._0x58efbd)+_0x2208a8(_0x52ea5b._0x1cb912)+_0x2208a8(_0x52ea5b._0x177700)+_0x2208a8(_0x52ea5b._0x4197f8)+_0x2208a8(0x269)+_0x2208a8(_0x52ea5b._0x35e546)+_0x2208a8(_0x52ea5b._0x1af06f)+_0x2208a8(_0x52ea5b._0x226fae)+_0x2208a8(_0x52ea5b._0x2905fa)+_0x2208a8(_0x52ea5b._0xdbf585)+_0x35d0fc(_0x52ea5b._0x2aae6f)+_0x2208a8(_0x52ea5b._0x8854f1)+_0x35d0fc(_0x52ea5b._0x3b2252)+_0x2208a8(0x19a)+_0x2208a8(_0x52ea5b._0x6fafd7)+_0x2208a8(_0x52ea5b._0x335bf2)+_0x2208a8(_0x52ea5b._0x4d53ff)+_0x35d0fc(_0x52ea5b._0x5cc057)+_0x2208a8(_0x52ea5b._0x12bfec)+_0x2208a8(_0x52ea5b._0x1bcdbb)+_0x2208a8(_0x52ea5b._0x31f83a)+_0x2208a8(_0x52ea5b._0x2e45bf)+_0x35d0fc(_0x52ea5b._0x3cba36)+_0x35d0fc(_0x52ea5b._0x3f92eb)+_0x2208a8(_0x52ea5b._0x12cf92)+_0x2208a8(0x1e9)+_0x35d0fc(0x222)+_0x2208a8(_0x52ea5b._0x40c055)+_0x35d0fc(_0x52ea5b._0x2bf391)+_0x35d0fc(0x258)+_0x2208a8(_0x52ea5b._0x4d1e78)+_0x35d0fc(_0x52ea5b._0x3a379e)+_0x35d0fc(0x188)+_0x2208a8(0x1c6)+_0x35d0fc(_0x52ea5b._0x2423bd)+_0x2208a8(_0x52ea5b._0x1c486e)+_0x2208a8(0x1d8)+_0x2208a8(_0x52ea5b._0x138bae)+_0x35d0fc(_0x52ea5b._0x52ceb1)+_0x35d0fc(_0x52ea5b._0x1a2308)+_0x2208a8(_0x52ea5b._0x18f048)+_0x35d0fc(_0x52ea5b._0x2b2960)+_0x35d0fc(_0x52ea5b._0x1979cc)+_0x35d0fc(0x233)+_0x2208a8(_0x52ea5b._0x1b1c2f)+_0x35d0fc(_0x52ea5b._0x344828)+_0x2208a8(_0x52ea5b._0x42b2c2)+_0x35d0fc(0x1eb)+_0x35d0fc(_0x52ea5b._0x3d8349)+_0x2208a8(_0x52ea5b._0x2b04f4)+_0x2208a8(_0x52ea5b._0x5765b5)+_0x35d0fc(_0x52ea5b._0x50712e)+_0x35d0fc(_0x52ea5b._0x1b0f2e)+_0x2208a8(_0x52ea5b._0x15da5c)+_0x2208a8(_0x52ea5b._0xfe609b)+_0x35d0fc(_0x52ea5b._0x4430b1)+_0x35d0fc(_0x52ea5b._0x54d924)+_0x35d0fc(_0x52ea5b._0x2d0fa6)+_0x35d0fc(_0x52ea5b._0x12236e)+_0x35d0fc(0x29d)+_0x2208a8(_0x52ea5b._0x331e13)+_0x2208a8(_0x52ea5b._0x2ac755)+_0x2208a8(_0x52ea5b._0x110031)+_0x2208a8(_0x52ea5b._0xee7d74)+_0x35d0fc(_0x52ea5b._0x5c8372)+_0x2208a8(0x1af)+_0x2208a8(_0x52ea5b._0x1a40a8)+_0x35d0fc(_0x52ea5b._0x2f4763)+_0x35d0fc(_0x52ea5b._0x11a419)+_0x35d0fc(0x220)+_0x35d0fc(_0x52ea5b._0x28c7e3)+_0x35d0fc(0x237)+_0x2208a8(_0x52ea5b._0x5379c8)+_0x2208a8(0x259)+_0x35d0fc(_0x52ea5b._0x231bfd)+_0x2208a8(0x297)+_0x35d0fc(_0x52ea5b._0x41964d)+_0x2208a8(_0x52ea5b._0x238e9a)+_0x2208a8(0x1ee)+_0x2208a8(_0x52ea5b._0x567665)+_0x35d0fc(_0x52ea5b._0x4adaa0)+_0x2208a8(_0x52ea5b._0x5df2a7)+_0x35d0fc(_0x52ea5b._0x3f451e)+_0x35d0fc(_0x52ea5b._0x2a63f3)+_0x2208a8(_0x52ea5b._0x7b9fb5)+_0x2208a8(0x257)+_0x35d0fc(0x1bf)+_0x2208a8(0x1d1)+_0x2208a8(_0x52ea5b._0x416965)+_0x2208a8(_0x52ea5b._0x5b8f39)+_0x2208a8(_0x52ea5b._0x56011b)+_0x35d0fc(0x27f)+_0x35d0fc(_0x52ea5b._0x2c30b3)+_0x2208a8(_0x52ea5b._0x2489c4)+_0x35d0fc(_0x52ea5b._0x5571bc)+_0x2208a8(_0x52ea5b._0x4d3219)+_0x35d0fc(0x28e)+_0x2208a8(_0x52ea5b._0xfee2d0)+_0x2208a8(_0x52ea5b._0x490c64)+_0x35d0fc(_0x52ea5b._0xa0dfbb)+_0x35d0fc(_0x52ea5b._0x1c2ccd)+_0x35d0fc(_0x52ea5b._0x304b41)+_0x35d0fc(0x22d)+_0x35d0fc(_0x52ea5b._0x26c37b)+_0x2208a8(_0x52ea5b._0x5b3ef2)+_0x2208a8(0x216)+_0x35d0fc(_0x52ea5b._0x47336e)+_0x35d0fc(_0x52ea5b._0x14b851)+_0x2208a8(_0x52ea5b._0x526b67)+_0x35d0fc(_0x52ea5b._0x58b2b1)+_0x35d0fc(0x1bd)+_0x2208a8(0x1b2)+_0x35d0fc(_0x52ea5b._0x43a78f)+_0x2208a8(_0x52ea5b._0x2123e4)+_0x2208a8(_0x52ea5b._0x24b5b2)+_0x2208a8(_0x52ea5b._0x3de531)+_0x35d0fc(_0x52ea5b._0x4e550f)+_0x2208a8(_0x52ea5b._0x1e3c0b)+_0x35d0fc(_0x52ea5b._0xb964b0)+_0x35d0fc(0x21d)+_0x35d0fc(_0x52ea5b._0x1030c1)+_0x2208a8(_0x52ea5b._0x134af3)+_0x2208a8(_0x52ea5b._0x1b6eee)+_0x35d0fc(0x1b7)+_0x35d0fc(0x275)+_0x2208a8(0x1c5)+_0x2208a8(0x1b0)+_0x2208a8(_0x52ea5b._0x16905c)+_0x35d0fc(_0x52ea5b._0x4254dc)+_0x2208a8(_0x52ea5b._0x5691f9)+_0x2208a8(_0x52ea5b._0x334766)+_0x35d0fc(_0x52ea5b._0x152d43)+_0x2208a8(_0x52ea5b._0x553879)+_0x35d0fc(_0x52ea5b._0x56830a)+_0x2208a8(_0x52ea5b._0x4e8049)+_0x35d0fc(0x23d)+'1'),_0x2cbd9a=0x10001n;function _0x30d3c1(_0x4a3abf,_0x369984,_0x213a7a){const _0x3a82a4=_0x2208a8,_0x5ceb99=_0x2208a8;let _0x793e06=0x1n;_0x4a3abf=_0x116a4a[_0x3a82a4(_0x358a45._0x4ddc42)+'Y'](_0x4a3abf,_0x213a7a);while(_0x369984>0x0n){if(_0x116a4a[_0x5ceb99(_0x358a45._0x4ddc42)+'Y'](_0x369984,0x2n)===0x1n)_0x793e06=_0x793e06*_0x4a3abf%_0x213a7a;_0x369984=_0x369984/0x2n,_0x4a3abf=_0x116a4a[_0x3a82a4(_0x358a45._0x47bb5a)+'k'](_0x4a3abf,_0x4a3abf)%_0x213a7a;}return _0x793e06;}function _0x58c011(_0x8fed14){const _0x4310c3=_0x2208a8,_0x2d3319=_0x2208a8;let _0x4e6bac=_0x8fed14[_0x4310c3(_0x4cc67f._0x44c5b2)+_0x4310c3(_0x4cc67f._0x4c0883)](0x10);if(_0x116a4a[_0x4310c3(_0x4cc67f._0x199a33)+'a'](_0x4e6bac[_0x2d3319(_0x4cc67f._0x55d286)+'th']%0x2,0x0))_0x4e6bac='0'+_0x4e6bac;let _0x59a306='';for(let _0x580a87=0x0;_0x116a4a[_0x2d3319(0x1d6)+'Y'](_0x580a87,_0x4e6bac[_0x4310c3(_0x4cc67f._0x55d286)+'th']);_0x580a87+=0x2){_0x59a306+=String[_0x4310c3(_0x4cc67f._0x385e55)+_0x4310c3(_0x4cc67f._0x51c7ec)+_0x4310c3(_0x4cc67f._0x5cebd8)](parseInt(_0x4e6bac[_0x4310c3(_0x4cc67f._0x4134f5)+'tr'](_0x580a87,0x2),0x10));}return _0x59a306;}function _0x2bcc49(_0x111b72){const _0x454803=_0x35d0fc,_0xd4f632=_0x35d0fc;let _0x420148='';for(let _0x586cad=0x0;_0x116a4a[_0x454803(_0x2cc759._0x2fbd00)+'M'](_0x586cad,_0x111b72[_0x454803(_0x2cc759._0x400295)+'th']);_0x586cad++){_0x420148+=_0x111b72[_0x454803(_0x2cc759._0x1c4d2b)+_0xd4f632(0x2a4)+'At'](_0x586cad)[_0x454803(_0x2cc759._0x418c48)+_0x454803(0x24a)](0x10)[_0x454803(_0x2cc759._0x39e8a1)+_0xd4f632(0x1d3)](0x2,'0');}return BigInt('0x'+_0x420148);}function _0x4a474e(_0x3ea506){const _0x4659c8=_0x2208a8,_0x30ad09=_0x2208a8;function _0x5c94a6(_0x59c427,_0x35ee63){return _0x59c427>>>_0x35ee63|_0x59c427<<0x20-_0x35ee63;}var _0x4d23a8=Math[_0x4659c8(_0x5ab626._0x5e14f3)],_0x10b5d1=_0x4d23a8(0x2,0x20),_0xb72970=_0x4659c8(_0x5ab626._0x5af576)+'th',_0xe0851f,_0x1f7b0c,_0x6a04d4='',_0x1bfdc1=[],_0x24a76b=_0x3ea506[_0xb72970]*0x8,_0x3a41f8=_0x4a474e['h']=_0x4a474e['h']||[],_0x1cf1b0=_0x4a474e['k']=_0x4a474e['k']||[],_0x51cbb6=_0x1cf1b0[_0xb72970],_0x3799ed={};for(var _0x2c9b20=0x2;_0x116a4a[_0x30ad09(_0x5ab626._0x47f16b)+'y'](_0x51cbb6,0x40);_0x2c9b20++){if(!_0x3799ed[_0x2c9b20]){for(_0xe0851f=0x0;_0xe0851f<0x139;_0xe0851f+=_0x2c9b20){_0x3799ed[_0xe0851f]=_0x2c9b20;}_0x3a41f8[_0x51cbb6]=_0x116a4a[_0x30ad09(_0x5ab626._0x37de13)+'N'](_0x4d23a8(_0x2c9b20,0.5),_0x10b5d1)|0x0,_0x1cf1b0[_0x51cbb6++]=_0x116a4a[_0x4659c8(_0x5ab626._0x49eece)+'f'](_0x4d23a8(_0x2c9b20,0x1/0x3),_0x10b5d1)|0x0;}}_0x3ea506+='\u0080';while(_0x3ea506[_0xb72970]%0x40-0x38)_0x3ea506+='\x00';for(_0xe0851f=0x0;_0x116a4a[_0x4659c8(_0x5ab626._0x3810a9)+'Y'](_0xe0851f,_0x3ea506[_0xb72970]);_0xe0851f++){_0x1f7b0c=_0x3ea506[_0x4659c8(0x1bb)+_0x30ad09(0x2a4)+'At'](_0xe0851f);if(_0x116a4a[_0x4659c8(0x25e)+'H'](_0x1f7b0c,0x8))return;_0x1bfdc1[_0xe0851f>>0x2]|=_0x116a4a[_0x30ad09(_0x5ab626._0x31d7ee)+'o'](_0x1f7b0c,_0x116a4a[_0x4659c8(0x1ac)+'Y'](0x3-_0xe0851f,0x4)*0x8);}_0x1bfdc1[_0x1bfdc1[_0xb72970]]=_0x116a4a[_0x4659c8(0x201)+'P'](_0x24a76b/_0x10b5d1,0x0),_0x1bfdc1[_0x1bfdc1[_0xb72970]]=_0x24a76b;for(_0x1f7b0c=0x0;_0x1f7b0c<_0x1bfdc1[_0xb72970];){var _0x1f59da=_0x1bfdc1[_0x30ad09(_0x5ab626._0x530552)+'e'](_0x1f7b0c,_0x1f7b0c+=0x10),_0x4ccf63=_0x3a41f8;_0x3a41f8=_0x3a41f8[_0x4659c8(_0x5ab626._0x530552)+'e'](0x0,0x8);for(_0xe0851f=0x0;_0xe0851f<0x40;_0xe0851f++){const _0x126602=(_0x4659c8(0x289)+_0x4659c8(_0x5ab626._0x413aad)+_0x30ad09(_0x5ab626._0xcb1660))[_0x4659c8(_0x5ab626._0x392afa)+'t']('|');let _0x3df62f=0x0;while(!![]){switch(_0x126602[_0x3df62f++]){case'0':_0x3a41f8=[_0x116a4a[_0x30ad09(_0x5ab626._0x58adea)+'h'](_0x5d3a15,_0x11a7fb)|0x0][_0x4659c8(_0x5ab626._0x29e284)+'at'](_0x3a41f8);continue;case'1':_0x3a41f8[0x4]=_0x116a4a[_0x4659c8(_0x5ab626._0x2e5d61)+'P'](_0x3a41f8[0x4]+_0x5d3a15,0x0);continue;case'2':var _0x2773c7=_0x1f59da[_0xe0851f-0xf],_0x4daf91=_0x1f59da[_0xe0851f-0x2];continue;case'3':var _0x5d3a15=_0x116a4a[_0x4659c8(_0x5ab626._0x480cb2)+'B'](_0x3a41f8[0x7]+(_0x5c94a6(_0x1d15aa,0x6)^_0x5c94a6(_0x1d15aa,0xb)^_0x5c94a6(_0x1d15aa,0x19))+(_0x116a4a[_0x30ad09(_0x5ab626._0x30594a)+'N'](_0x1d15aa,_0x3a41f8[0x5])^~_0x1d15aa&_0x3a41f8[0x6]),_0x1cf1b0[_0xe0851f])+(_0x1f59da[_0xe0851f]=_0x116a4a[_0x4659c8(_0x5ab626._0x3810a9)+'Y'](_0xe0851f,0x10)?_0x1f59da[_0xe0851f]:_0x1f59da[_0xe0851f-0x10]+(_0x5c94a6(_0x2773c7,0x7)^_0x5c94a6(_0x2773c7,0x12)^_0x2773c7>>>0x3)+_0x1f59da[_0xe0851f-0x7]+_0x116a4a[_0x4659c8(_0x5ab626._0x2e629a)+'E'](_0x5c94a6(_0x4daf91,0x11)^_0x116a4a[_0x4659c8(0x29c)+'I'](_0x5c94a6,_0x4daf91,0x13),_0x116a4a[_0x30ad09(_0x5ab626._0x56f67b)+'v'](_0x4daf91,0xa))|0x0);continue;case'4':var _0x1ca6f0=_0x3a41f8[0x0],_0x1d15aa=_0x3a41f8[0x4];continue;case'5':var _0x11a7fb=(_0x5c94a6(_0x1ca6f0,0x2)^_0x5c94a6(_0x1ca6f0,0xd)^_0x5c94a6(_0x1ca6f0,0x16))+_0x116a4a[_0x30ad09(_0x5ab626._0x3f972e)+'E'](_0x116a4a[_0x30ad09(0x200)+'E'](_0x1ca6f0&_0x3a41f8[0x1],_0x116a4a[_0x30ad09(_0x5ab626._0x365ed)+'I'](_0x1ca6f0,_0x3a41f8[0x2])),_0x3a41f8[0x1]&_0x3a41f8[0x2]);continue;}break;}}for(_0xe0851f=0x0;_0x116a4a[_0x4659c8(_0x5ab626._0x35948b)+'C'](_0xe0851f,0x8);_0xe0851f++){_0x3a41f8[_0xe0851f]=_0x3a41f8[_0xe0851f]+_0x4ccf63[_0xe0851f]|0x0;}}for(_0xe0851f=0x0;_0xe0851f<0x8;_0xe0851f++){for(_0x1f7b0c=0x3;_0x116a4a[_0x30ad09(_0x5ab626._0x58adea)+'h'](_0x1f7b0c,0x1);_0x1f7b0c--){var _0x3deb7e=_0x3a41f8[_0xe0851f]>>_0x1f7b0c*0x8&0xff;_0x6a04d4+=(_0x3deb7e<0x10?0x0:'')+_0x3deb7e[_0x4659c8(_0x5ab626._0x10e50e)+_0x30ad09(0x24a)](0x10);}}return _0x6a04d4;}class LicenseManager{static validate(_0x5832cd,_0x2a78b8={}){const _0x2efe4e=_0x35d0fc,_0x16301b=_0x35d0fc;if(!_0x5832cd)return{'valid':![],'tier':null,'reason':_0x2efe4e(0x288)+_0x2efe4e(_0x2240e9._0x342355)+_0x16301b(_0x2240e9._0x522e6e)+_0x16301b(0x22a)};const _0x520e35=_0x5832cd[_0x2efe4e(0x28d)](),_0x58ee19=_0x520e35[_0x2efe4e(_0x2240e9._0x5c624e)+_0x16301b(0x296)+_0x2efe4e(_0x2240e9._0x3506d2)](),_0x4b0463=_0x58ee19[_0x2efe4e(_0x2240e9._0x33bd23)+'t']('-'),_0x2ca3bb=_0x2a78b8[_0x2efe4e(_0x2240e9._0x2f09c1)+_0x16301b(_0x2240e9._0x3f83fd)]!==undefined&&_0x2a78b8[_0x2efe4e(_0x2240e9._0x2f09c1)+_0x16301b(_0x2240e9._0x3f83fd)]!==null?_0x2a78b8[_0x16301b(_0x2240e9._0x2f09c1)+_0x16301b(0x1a0)]:Date[_0x16301b(0x19b)]();let _0x42f525=0x0;_0x2a78b8[_0x16301b(_0x2240e9._0x56fc91)+_0x2efe4e(_0x2240e9._0x46fb87)]&&(_0x42f525=parseInt(_0x2a78b8[_0x2efe4e(_0x2240e9._0x421108)+_0x16301b(_0x2240e9._0x263294)][_0x2efe4e(0x2b7)+_0x16301b(_0x2240e9._0xda4032)](_0x16301b(_0x2240e9._0x415731)+_0x16301b(_0x2240e9._0x3f960a)+_0x16301b(0x1b5)+_0x2efe4e(_0x2240e9._0x24818b)+'e')||'0',0xa),(_0x116a4a[_0x16301b(_0x2240e9._0x145d86)+'K'](_0x2a78b8[_0x2efe4e(_0x2240e9._0x2f09c1)+_0x16301b(_0x2240e9._0x417878)],undefined)||_0x2a78b8[_0x16301b(_0x2240e9._0x4eb79c)+_0x2efe4e(_0x2240e9._0x417878)]===null)&&_0x2a78b8[_0x2efe4e(_0x2240e9._0x2a0e2f)+_0x2efe4e(_0x2240e9._0x5b94c2)][_0x2efe4e(_0x2240e9._0xe6a47a)+_0x2efe4e(_0x2240e9._0x5e21a5)](_0x2efe4e(_0x2240e9._0x438c78)+_0x16301b(_0x2240e9._0x3f960a)+_0x16301b(_0x2240e9._0x4f6de5)+_0x2efe4e(_0x2240e9._0x6d60e)+'e',_0x2ca3bb[_0x16301b(_0x2240e9._0x39d80c)+_0x16301b(_0x2240e9._0x22a21a)]()));if((_0x2a78b8[_0x16301b(_0x2240e9._0x5c64a6)+_0x16301b(_0x2240e9._0x3f83fd)]===undefined||_0x2a78b8[_0x16301b(_0x2240e9._0xeda16d)+_0x16301b(_0x2240e9._0x22a3ea)]===null)&&_0x2ca3bb<_0x42f525){if(_0x2a78b8[_0x16301b(_0x2240e9._0x31cc06)+_0x16301b(_0x2240e9._0x21ab66)+'y'])_0x2a78b8[_0x2efe4e(_0x2240e9._0x762f5c)+_0x2efe4e(_0x2240e9._0x5c1cb5)+'y']();return{'valid':![],'tier':null,'reason':_0x16301b(0x206)+_0x2efe4e(_0x2240e9._0x279ad6)+_0x16301b(_0x2240e9._0x195f51)+_0x2efe4e(_0x2240e9._0xdc5676)+_0x2efe4e(_0x2240e9._0x3eca28)+_0x2efe4e(_0x2240e9._0x4616e2)+_0x2efe4e(_0x2240e9._0x3005d8)+_0x2efe4e(_0x2240e9._0x25fef0)};}const _0x28ab40=typeof atob!==_0x16301b(0x29b)+_0x16301b(0x2a7)+'d'?atob:_0xa48bbc=>Buffer[_0x16301b(0x2a8)](_0xa48bbc,_0x2efe4e(0x18b)+'64')[_0x2efe4e(0x28a)+_0x2efe4e(0x24a)](_0x2efe4e(0x273)+'ry');if(_0x58ee19[_0x16301b(_0x2240e9._0x15b65d)+_0x16301b(0x198)+'th'](_0x2efe4e(_0x2240e9._0x14a75b)+_0x16301b(_0x2240e9._0x53c40d)+'-'))try{const _0x2c152e=_0x520e35[_0x16301b(0x205)+_0x2efe4e(0x287)+'g'](0x9),_0x3780db=_0x28ab40(_0x2c152e),_0x3f31c3=new Uint8Array(_0x3780db[_0x2efe4e(_0x2240e9._0x2f8c96)+'th']);for(let _0x4505b6=0x0;_0x4505b6<_0x3780db[_0x16301b(_0x2240e9._0x2f8c96)+'th'];_0x4505b6++){_0x3f31c3[_0x4505b6]=_0x3780db[_0x16301b(_0x2240e9._0x4678d6)+_0x2efe4e(_0x2240e9._0x54e89f)+'At'](_0x4505b6);}let _0x1dc6f5='';for(let _0x5749a9=0x0;_0x5749a9<_0x3f31c3[_0x2efe4e(_0x2240e9._0x2bb5d6)+'th'];_0x5749a9++){_0x1dc6f5+=_0x3f31c3[_0x5749a9][_0x2efe4e(_0x2240e9._0x54c798)+_0x16301b(_0x2240e9._0x7b6d06)](0x10)[_0x2efe4e(_0x2240e9._0x24be9a)+_0x2efe4e(_0x2240e9._0x3411c1)](0x2,'0');}const _0x1db55a=_0x116a4a[_0x2efe4e(_0x2240e9._0x377b3f)+'h'](BigInt,'0x'+_0x1dc6f5),_0x5c1c8a=_0x30d3c1(_0x1db55a,_0x2cbd9a,_0x50febf),_0x4e40d4=_0x116a4a[_0x16301b(_0x2240e9._0x4fbc68)+'h'](_0x58c011,_0x5c1c8a);if(_0x4e40d4[_0x2efe4e(_0x2240e9._0x329501)+_0x16301b(_0x2240e9._0x56848f)+'th'](_0x116a4a[_0x16301b(_0x2240e9._0x24903f)+'m'])){const _0x14bfcf=parseInt(_0x4e40d4[_0x16301b(0x205)+_0x2efe4e(0x287)+'g'](0xb),0xa);if(!isNaN(_0x14bfcf)){if(_0x2ca3bb<_0x14bfcf)return{'valid':!![],'tier':_0x116a4a[_0x16301b(_0x2240e9._0x46dc1f)+'R'],'expires':_0x14bfcf};if(_0x2a78b8[_0x16301b(_0x2240e9._0x179c95)+_0x2efe4e(_0x2240e9._0x690e6e)+'d'])_0x2a78b8[_0x2efe4e(_0x2240e9._0x179c95)+_0x2efe4e(_0x2240e9._0x690e6e)+'d'](_0x2efe4e(0x239)+'t');return{'valid':![],'tier':null,'reason':_0x16301b(0x239)+_0x16301b(0x214)+_0x16301b(0x1e3)+'d'};}}}catch(_0x4f40cb){return{'valid':![],'tier':null,'reason':_0x16301b(_0x2240e9._0x1e4d93)+_0x2efe4e(_0x2240e9._0x5b9c21)+_0x16301b(0x1a9)+_0x2efe4e(_0x2240e9._0x989c8a)+_0x16301b(_0x2240e9._0x6a9f9e)+_0x2efe4e(_0x2240e9._0xd9dc2d)};}if(_0x58ee19[_0x2efe4e(_0x2240e9._0x15b65d)+_0x16301b(_0x2240e9._0x32b8df)+'th'](_0x16301b(_0x2240e9._0x552adb)+_0x16301b(_0x2240e9._0x174925)))try{const _0x2da8f2=_0x520e35[_0x16301b(_0x2240e9._0x1746d2)+_0x2efe4e(0x287)+'g'](0x7),_0x52a8cc=_0x116a4a[_0x2efe4e(_0x2240e9._0x4fbc68)+'h'](_0x28ab40,_0x2da8f2),_0x3a9994=new Uint8Array(_0x52a8cc[_0x16301b(0x253)+'th']);for(let _0x52906c=0x0;_0x52906c<_0x52a8cc[_0x2efe4e(_0x2240e9._0x47f6c5)+'th'];_0x52906c++){_0x3a9994[_0x52906c]=_0x52a8cc[_0x2efe4e(0x1bb)+_0x16301b(_0x2240e9._0x54e89f)+'At'](_0x52906c);}let _0x1887a7='';for(let _0x46c648=0x0;_0x46c648<_0x3a9994[_0x2efe4e(_0x2240e9._0x3fc7ba)+'th'];_0x46c648++){_0x1887a7+=_0x3a9994[_0x46c648][_0x16301b(0x28a)+_0x16301b(_0x2240e9._0x7b6d06)](0x10)[_0x16301b(_0x2240e9._0x335e9e)+_0x2efe4e(_0x2240e9._0x4551a2)](0x2,'0');}const _0x385444=BigInt('0x'+_0x1887a7),_0x2ee76d=_0x30d3c1(_0x385444,_0x2cbd9a,_0x50febf),_0x473569=_0x116a4a[_0x2efe4e(_0x2240e9._0x5d02c2)+'Q'](_0x58c011,_0x2ee76d);if(_0x473569[_0x2efe4e(_0x2240e9._0x1512fc)+_0x2efe4e(_0x2240e9._0x32b8df)+'th'](_0x2efe4e(0x24f)+_0x16301b(_0x2240e9._0x5dbe49)+'-')){const _0x1deb2b=_0x473569[_0x16301b(0x284)+'t']('-');if(_0x116a4a[_0x2efe4e(_0x2240e9._0x543d00)+'f'](_0x1deb2b[_0x16301b(_0x2240e9._0x124b53)+'th'],0x5)){const _0x4fd40d=_0x1deb2b[0x2],_0x3c02fc=parseInt(_0x1deb2b[0x4],0xa);if(!isNaN(_0x3c02fc)){if(_0x2ca3bb<_0x3c02fc)return{'valid':!![],'tier':_0x4fd40d,'expires':_0x3c02fc};if(_0x2a78b8[_0x2efe4e(0x27b)+_0x16301b(_0x2240e9._0x5472fc)+'d'])_0x2a78b8[_0x16301b(_0x2240e9._0x179c95)+_0x16301b(0x1e3)+'d'](_0x2efe4e(_0x2240e9._0x22ad78));return{'valid':![],'tier':null,'reason':_0x2efe4e(0x23b)+_0x2efe4e(_0x2240e9._0x2135d1)+_0x2efe4e(0x1ea)+_0x2efe4e(0x267)};}}}}catch(_0x4f1b88){return{'valid':![],'tier':null,'reason':_0x16301b(_0x2240e9._0x24714a)+_0x2efe4e(_0x2240e9._0x593210)+_0x2efe4e(0x2a5)+_0x2efe4e(0x1d4)+_0x2efe4e(_0x2240e9._0xdd98e0)+'d'};}if(_0x4b0463[_0x2efe4e(0x253)+'th']===0x4&&_0x116a4a[_0x16301b(0x251)+'G'](_0x4b0463[0x0],'PS')&&[_0x16301b(_0x2240e9._0x4be02c),_0x16301b(_0x2240e9._0x10776f)+'S',_0x116a4a[_0x16301b(0x1e7)+'V'],_0x2efe4e(_0x2240e9._0x132beb),_0x16301b(_0x2240e9._0x50ed04)+_0x2efe4e(_0x2240e9._0x158932)+'SE'][_0x2efe4e(_0x2240e9._0x54d949)+_0x16301b(_0x2240e9._0x402761)](_0x4b0463[0x1])){const _0xa54ed4=_0x4b0463[0x1],_0x79cae9=_0x4b0463[0x2],_0x37079f=_0x4b0463[0x3],_0x24b9ea=_0x116a4a[_0x16301b(_0x2240e9._0x3f503e)+'n'],_0x2b069f=_0x116a4a[_0x16301b(_0x2240e9._0x1b0e06)+'h'](_0x79cae9+_0x24b9ea,_0xa54ed4);let _0x328570=0x0;for(let _0x340b13=0x0;_0x340b13<_0x2b069f[_0x2efe4e(_0x2240e9._0x2f8c96)+'th'];_0x340b13++){_0x328570+=_0x2b069f[_0x2efe4e(_0x2240e9._0x460f02)+_0x2efe4e(_0x2240e9._0x54e89f)+'At'](_0x340b13)*_0x116a4a[_0x2efe4e(0x242)+'h'](_0x340b13,0x1);}const _0xe14623=(_0x328570%0x270f)[_0x16301b(_0x2240e9._0x4b97e2)+_0x2efe4e(_0x2240e9._0x3c1581)]()[_0x2efe4e(_0x2240e9._0x335e9e)+_0x16301b(_0x2240e9._0x4551a2)](0x4,'0');if(_0x37079f===_0xe14623)return{'valid':!![],'tier':_0xa54ed4};}if(_0x520e35[_0x2efe4e(0x265)+_0x16301b(_0x2240e9._0x56848f)+'th'](_0x116a4a[_0x16301b(_0x2240e9._0x5ff0c6)+'c'])&&_0x520e35[_0x2efe4e(_0x2240e9._0x3166da)+'t']('.')[_0x2efe4e(0x253)+'th']===0x3)try{const [_0x306178,_0x7fcfa1,_0x212f41]=_0x520e35[_0x16301b(_0x2240e9._0x33bd23)+'t']('.');let _0xc09b40=_0x212f41[_0x16301b(0x189)+_0x2efe4e(0x1f6)](/-/g,'+')[_0x2efe4e(_0x2240e9._0x2b0cfe)+_0x16301b(_0x2240e9._0x3aabf4)](/_/g,'/');while(_0xc09b40[_0x16301b(_0x2240e9._0x3cb8e7)+'th']%0x4)_0xc09b40+='=';const _0x555b7d=_0x116a4a[_0x16301b(_0x2240e9._0x4fbc68)+'h'](_0x28ab40,_0xc09b40);let _0x51db7d='';for(let _0x5bd515=0x0;_0x116a4a[_0x2efe4e(_0x2240e9._0x4ee19c)+'c'](_0x5bd515,_0x555b7d[_0x2efe4e(_0x2240e9._0x3cb8e7)+'th']);_0x5bd515++){_0x51db7d+=_0x555b7d[_0x16301b(0x1bb)+_0x2efe4e(_0x2240e9._0x33f054)+'At'](_0x5bd515)[_0x16301b(_0x2240e9._0x155ffd)+_0x2efe4e(_0x2240e9._0x12e181)](0x10)[_0x2efe4e(0x1c3)+_0x16301b(_0x2240e9._0x4ceac4)](0x2,'0');}const _0x4d7966=BigInt('0x'+_0x51db7d),_0x44f319=_0x30d3c1(_0x4d7966,_0x2cbd9a,_0x50febf);let _0x340213=_0x44f319[_0x2efe4e(_0x2240e9._0x3ceff5)+_0x2efe4e(_0x2240e9._0x428ddb)](0x10);if(_0x116a4a[_0x16301b(_0x2240e9._0x25650d)+'a'](_0x340213[_0x16301b(_0x2240e9._0x3f2b8e)+'th']%0x2,0x0))_0x340213=_0x116a4a[_0x16301b(_0x2240e9._0x528f03)+'B']('0',_0x340213);const _0x16a53a=_0x4a474e(_0x116a4a[_0x16301b(_0x2240e9._0x42b8d7)+'T'](_0x306178,'.')+_0x7fcfa1);if(_0x340213[_0x16301b(_0x2240e9._0x524af7)+_0x2efe4e(_0x2240e9._0x40eb4d)](_0x16a53a)){const _0x1feab6=_0x28ab40(_0x7fcfa1[_0x2efe4e(_0x2240e9._0x2b0cfe)+_0x2efe4e(_0x2240e9._0x3aabf4)](/-/g,'+')[_0x16301b(_0x2240e9._0x2b0cfe)+_0x2efe4e(0x1f6)](/_/g,'/')),_0x40e207=JSON[_0x2efe4e(0x210)+'e'](_0x1feab6);if(_0x40e207[_0x16301b(_0x2240e9._0x2b07cd)]&&_0x116a4a[_0x16301b(_0x2240e9._0x21d4a3)+'Y'](_0x2ca3bb/0x3e8,_0x40e207[_0x16301b(0x1f4)]))return{'valid':!![],'tier':_0x40e207[_0x2efe4e(_0x2240e9._0x3556fa)]||_0x116a4a[_0x16301b(0x282)+'c'],'expires':_0x40e207[_0x2efe4e(_0x2240e9._0x130ddf)]*0x3e8};else{if(_0x2a78b8[_0x16301b(_0x2240e9._0x179c95)+_0x2efe4e(_0x2240e9._0x2fc3fc)+'d'])_0x2a78b8[_0x2efe4e(_0x2240e9._0x6cdd05)+_0x16301b(0x1e3)+'d'](_0x2efe4e(_0x2240e9._0x20529b));return{'valid':![],'tier':null,'reason':_0x2efe4e(0x20f)+_0x16301b(_0x2240e9._0x2f36ae)+_0x2efe4e(_0x2240e9._0xd6198d)};}}}catch(_0x1065f6){return{'valid':![],'tier':null,'reason':_0x16301b(_0x2240e9._0x5ebb09)+_0x2efe4e(_0x2240e9._0x140551)+_0x16301b(_0x2240e9._0x3637ad)+_0x16301b(0x1d4)+_0x16301b(_0x2240e9._0x543936)+'d'};}return{'valid':![],'tier':null,'reason':_0x2efe4e(_0x2240e9._0x55040d)+_0x16301b(_0x2240e9._0xf0068c)+_0x16301b(_0x2240e9._0x2792fa)+'at'};}}typeof globalThis!==_0x35d0fc(_0x52ea5b._0x158def)+_0x2208a8(_0x52ea5b._0x2d1d9b)+'d'&&(globalThis[_0x35d0fc(_0x52ea5b._0x4e11b7)+_0x2208a8(_0x52ea5b._0x270e6a)+_0x2208a8(_0x52ea5b._0x398220)+'er']=LicenseManager),typeof _0x5b81f3!==_0x116a4a[_0x2208a8(_0x52ea5b._0x39a5d0)+'U']&&(_0x5b81f3[_0x2208a8(_0x52ea5b._0x3efa05)+_0x2208a8(_0x52ea5b._0x237cb6)+_0x2208a8(_0x52ea5b._0x398220)+'er']=LicenseManager),_0x116a4a[_0x2208a8(_0x52ea5b._0x523c97)+'a'](typeof window,_0x2208a8(0x29b)+_0x35d0fc(0x2a7)+'d')&&(window[_0x2208a8(_0x52ea5b._0x4e11b7)+_0x2208a8(0x20e)+_0x35d0fc(_0x52ea5b._0x49d7c6)+'er']=LicenseManager),_0x116a4a[_0x35d0fc(_0x52ea5b._0x5ea6d9)+'a'](typeof exports,_0x2208a8(_0x52ea5b._0x158def)+_0x35d0fc(_0x52ea5b._0x5f06e3)+'d')&&(typeof module!==_0x2208a8(_0x52ea5b._0x158def)+_0x2208a8(_0x52ea5b._0x2aa3d3)+'d'&&module[_0x2208a8(_0x52ea5b._0x4101e4)+_0x35d0fc(_0x52ea5b._0x3da520)]&&(module[_0x2208a8(_0x52ea5b._0x4101e4)+_0x2208a8(_0x52ea5b._0x3da520)]=LicenseManager),exports[_0x2208a8(_0x52ea5b._0x4cfef5)+_0x2208a8(0x20e)+_0x35d0fc(_0x52ea5b._0x49d7c6)+'er']=LicenseManager);}(typeof globalThis!==_0x5bf5a4(0x29b)+_0x5bf5a4(0x2a7)+'d'?globalThis:typeof window!==_0x5bf5a4(0x29b)+_0x5bf5a4(0x2a7)+'d'?window:this));